· FabLab Westharima Team · ドキュメント · 14 min read
ターミナルコマンド一覧(オプション・使用例付き)【実用重視】
日常的によく使うターミナルコマンドを、説明・主なオプション・使用例の列に分けて一覧化。Linux・macOS対応の実用重視コマンドリファレンスです。
日常的によく使うターミナル(シェル)コマンドを、説明・主なオプション・使用例の列に分けて一覧にまとめました。最小限をすばやく思い出せる実用重視の内容にしています。Linux と macOS のどちらでも使えるコマンドを中心に、macOS 特有の便利コマンドも補足します。より詳しい使い方は man コマンド名 で確認できます。
使い方のヒント
安全第一:
rm -rfなどの破壊的コマンドは、対象やパスをよく確認してから実行しましょう。誤操作を防ぐため、-i(確認付き)オプションの活用もおすすめです。マニュアルの活用: コマンドの詳細やオプションは
man コマンド名またはコマンド --helpで確認できます。困ったときはまずマニュアルを参照しましょう。組み合わせが力:
|(パイプ)やリダイレクト(>,>>)を組み合わせることで、複数のコマンドを連携させて効率的に作業できます。例:cat file.txt | grep "error" > errors.txtタブ補完の活用: コマンドやファイル名の途中で
Tabキーを押すと自動補完できます。長いパスや複雑なファイル名入力の手間を省けます。履歴の活用: 上下矢印キーで過去のコマンド履歴を呼び出せます。
historyコマンドで一覧表示、!nで特定の履歴番号を再実行できます。ワイルドカードの利用:
*や?などのワイルドカードを使うと、複数ファイルをまとめて指定できます。例:ls *.txtコマンドの中断・停止: 実行中のコマンドを中断したい場合は
Ctrl + C、一時停止はCtrl + Zで行えます。エイリアスの活用: よく使うコマンドや長いコマンドは
aliasで短縮できます。例:alias ll='ls -lAh'パーミッションの確認と変更: ファイルやディレクトリの権限は
ls -lで確認、chmodやchownで変更できます。
基本操作 / ナビゲーション
| コマンド | 説明 | 主なオプション | 使用例 |
|---|---|---|---|
| pwd | 現在の作業ディレクトリを表示します。 | なし | pwd(現在のパスを表示します) |
| ls | ディレクトリの内容を一覧表示します。 | -l: 詳細表示 -a: 隠しファイルも表示 -h: 人間に読みやすいサイズ | ls(簡易一覧を表示します) ls -l(詳細一覧を表示します) ls -la(隠しを含む詳細一覧を表示します) ls -lh(サイズを見やすく表示します) |
| cd | ディレクトリを移動します。 | -: 直前のディレクトリへ ..: 親ディレクトリへ | cd /var/log(絶対パスで移動します) cd ..(親ディレクトリへ移動します) cd -(直前のディレクトリへ戻ります) |
| clear | 画面をクリアします。 | なし | clear(画面を消去します) |
| exit | シェルを終了します。 | なし | exit(シェルを終了します) |
ファイル / ディレクトリ操作
| コマンド | 説明 | 主なオプション | 使用例 |
|---|---|---|---|
| mkdir | ディレクトリを作成します。 | -p: 必要なら親ディレクトリも同時に作成 | mkdir -p project/data/raw(raw ディレクトリを作る際に、data や project など上位ディレクトリがまだ存在しない場合も、まとめてすべて作成します) |
| rmdir | 空のディレクトリを削除します。 | なし | rmdir empty_dir(空のディレクトリを削除します) |
| touch | タイムスタンプ更新/新規ファイル作成を行います。 | なし | touch new_file.txt(空ファイルを作成します) |
| cp | ファイル/ディレクトリをコピーします。 | -r: 再帰的にコピー -i: 上書き前に確認 -v: 進行表示 | cp -r src dst(ディレクトリを再帰的にコピーします) |
| mv | ファイル/ディレクトリを移動・改名します。 | -i: 上書き前に確認 -v: 進行表示 | mv old.txt new.txt(ファイル名を変更します) |
| rm | ファイル/ディレクトリを削除します。 | -r: 再帰削除 -f: 強制削除 -i: 確認あり | rm -rf build/(⚠️ 確認なしで強制削除します。このコマンドは非常に危険で、指定したディレクトリやファイルがすべて即座に削除され、元に戻せません。誤って重要なファイルやシステムディレクトリを指定すると、システムが正常に動作しなくなる恐れがあります。実行前にパスや内容を必ず確認してください) |
| ln | ハード/シンボリックリンクを作成します。 | -s: シンボリックリンク | ln -s /path/to/original link_name(シンボリックリンクを作成します) |
シンボリックリンクとは? シンボリックリンク(シンリンク、soft link)は、実体ファイルやディレクトリへの「ショートカット」のような特殊ファイルです。リンク先が移動・削除されるとリンクが無効(壊れたリンク)になりますが、異なるファイルシステム間でも作成できます。 一方、ハードリンクは同じファイルシステム内でのみ有効で、リンク先が削除されても他のハードリンクから内容にアクセスできます。 シンボリックリンクは
ln -sで、ハードリンクはlnで作成します。
検索 / テキスト処理
| コマンド | 説明 | 主なオプション | 使用例 |
|---|---|---|---|
| cat | ファイル内容を連結・表示します。 | -n: 行番号を付与 | cat file1 file2 > all.txt(2つの内容を連結して保存します) |
| less | ページャで内容を閲覧します。 | なし | less large.log(ページ送りで閲覧します) |
| head | 先頭行を表示します。 | -n: 行数指定 | head -n 20 file.txt(先頭20行を表示します) |
| tail | 末尾行を表示します。 | -n: 行数指定 -f: 追尾表示 | tail -f /var/log/system.log(追尾しながら末尾を表示します) |
| grep | 正規表現で行を検索します。 | -i: 大小無視 -v: 否定一致 -r: 再帰検索 | grep -ri "error" ./logs(大文字小文字を無視して再帰検索します) |
| wc | 行/単語/バイト数を数えます。 | -l: 行数 -w: 単語数 -c: バイト数 | wc -l access.log(行数のみを数えます) |
| sort | 行をソートします。 | -r: 逆順 -n: 数値として | sort -nr scores.txt(数値として降順に並べます) |
| uniq | 重複行を処理します。 | -c: 件数表示 -d: 重複のみ表示 | sort data.txt | uniq -c(重複数を集計します) |
| cut | 区切りでフィールド抽出をします。 | -d: 区切り文字 -f: フィールド番号 | cut -d ':' -f 1,7 /etc/passwd(1列目と7列目を取り出します) |
| find | 条件でファイル検索をします。 | -name: 名前 -type: 種別 -size: サイズ | find . -type f -name "*.log"(拡張子が log のファイルを探します) |
| xargs | 標準入力を引数に変換して実行します。 | -n: 引数数 -P: 並列数 -I {}: プレースホルダー | ls *.log | xargs -n1 gzip(一覧を引数にして順次圧縮します) |
| sed | ストリームエディタで置換等を行います。 | -e: 式指定 -i: 上書き編集 -n: 自動出力抑制 | sed -i '' 's/foo/bar/g' file.txt(foo を bar に一括置換します) |
| awk | パターン処理とレポート生成を行います。 | -F: 区切り指定 | awk -F, '{print $1, $3}' data.csv(1列目と3列目を表示します) |
ストリームエディタ(sed)とは?
sedは「ストリームエディタ」と呼ばれ、ファイルや標準入力から受け取ったテキストデータを、コマンドで指定したルールに従って一括で編集・変換できるツールです。 たとえば「特定の文字列をすべて置換」「特定の行だけ削除」「パターンに一致する行だけ抽出」など、テキストファイルを直接開かずに自動処理できます。
sed 's/検索/置換/g' file.txtのように使い、sは「置換(substitute)」を意味します。-iオプションを付けると、元ファイルを直接書き換えます(バックアップを取りたい場合は-i.bakなどと指定)。- 正規表現も使えるため、複雑なパターンマッチや一括編集が可能です。
例:
sed 's/foo/bar/g' file.txt… file.txt 内の「foo」をすべて「bar」に置換して表示sed -i '' 's/foo/bar/g' file.txt… file.txt の内容を直接「foo→bar」に書き換え
プロセス / システム情報
| コマンド | 説明 | 主なオプション | 使用例 |
|---|---|---|---|
| ps | 実行中プロセスを表示します。 | -e: すべて -f: フル表示 | ps -ef(全プロセスを詳細表示します) |
| top | リアルタイムでプロセスを監視します。 | なし | top(プロセスの状況を監視します) |
| kill | プロセスを終了します。 | -9: 強制終了 | kill -9 1234(PID 1234 を強制終了します) |
| uptime | 稼働時間・負荷を表示します。 | なし | uptime(稼働時間と平均負荷を表示します) |
| whoami | 現在のユーザー名を表示します。 | なし | whoami(現在のユーザー名を表示します) |
| id | ユーザー/グループ ID を表示します。 | なし | id(UID/GID を表示します) |
| df | ファイルシステム使用量を表示します。 | -h: 人間向け表示 -T: FS タイプ | df -hT(ファイルシステムと空き容量を見やすく表示します) |
| du | ディレクトリごとの容量を表示します。 | -h: 人間向け -s: 合計のみ | du -sh ~/Downloads(合計サイズのみ見やすく表示します) |
| chmod | パーミッションを変更します。 | -R: 再帰的に適用 | chmod 755 script.sh(権限を 755 に設定します) |
| chown | 所有者/グループを変更します。 | -R: 再帰的に適用 | chown user:staff file.txt(所有者とグループを変更します) |
圧縮 / アーカイブ
| コマンド | 説明 | 主なオプション | 使用例 |
|---|---|---|---|
| tar | アーカイブ作成/展開を行います。 | -c: 作成 -x: 展開 -v: 詳細 -f: ファイル名指定 | tar -cvf archive.tar files/(アーカイブを作成します) / tar -xvf archive.tar(アーカイブを展開します) |
| zip | ZIP 形式で圧縮します。 | -r: ディレクトリ再帰 | zip -r archive.zip folder/(フォルダを再帰的に圧縮します) |
| unzip | ZIP を展開します。 | なし | unzip archive.zip(ZIP を展開します) |
| gzip | gzip で圧縮します。 | -k: 元ファイル保持 | gzip file.txt(単一ファイルを圧縮します) |
| gunzip | gzip を展開します。 | なし | gunzip file.txt.gz(gzip を解凍します) |
ネットワーク / リモート
| コマンド | 説明 | 主なオプション | 使用例 |
|---|---|---|---|
| curl | HTTP リクエストを送ります。 | -I: ヘッダーのみ -L: リダイレクト追従 -O/-o: 保存 -X: メソッド指定 | curl -L -o file.tar.gz https://example.com/file.tar.gz(リダイレクトに追従して保存します) |
| wget | ファイルをダウンロードします。 | -O: 保存名 -r: 再帰 -c: 続きから | wget -O file.tar.gz https://example.com/file.tar.gz(指定した名前で保存します) |
| ssh | リモートにログインします。 | -i: 鍵指定 -p: ポート | ssh -i key.pem -p 2222 user@host(鍵とポートを指定して接続します) |
| scp | リモートとファイルを転送します。 | -r: ディレクトリ -i: 鍵 -P: ポート | scp -i key.pem -P 2222 file user@host:/path/(鍵とポートを指定して転送します) |
| which | 実行ファイルのパスを表示します。 | なし | which python3(実行パスを表示します) |
| alias | コマンドの別名を定義します。 | なし | alias ll='ls -lah'(ll を ls -lah に割り当てます) |
| history | コマンド履歴を表示します。 | なし | history(履歴を表示します) |
macOS で便利なコマンド
| コマンド | 説明 | 主なオプション | 使用例 |
|---|---|---|---|
| open | Finder/アプリで開きます。 | -a: アプリ指定 -R: Finder で表示 -t: デフォルトエディタ | open .(カレントを Finder で開きます) open -a Finder .(Finder を指定して開きます) open README.md(既定アプリで開きます) |
| pbcopy | クリップボードへコピーします。 | なし | echo "hello" | pbcopy(文字列をクリップボードへ送ります) |
| pbpaste | クリップボードから貼り付けます。 | なし | pbpaste > clip.txt(クリップボードをファイルへ保存します) |
| brew | [Homebrew](https://brew.sh/) でパッケージ管理します。 | install: インストール update: 定義更新 upgrade: パッケージ更新 list: 一覧 | brew install wget(パッケージをインストールします) / brew upgrade(インストール済みを更新します) |

![ターミナルの起動・使い方・基本的なコマンド[初級]](/_astro/mkdocs_material_guide_eyecatch.DfbB4An5.png)