Linux コマンド一覧

| コマンド          | 説明                                       | よく使用されるオプション                                 |
|-------------------|--------------------------------------------|---------------------------------------------------------|
| **ls**            | ディレクトリの内容を一覧表示                | `-l`, `-a`, `-h`                                        |
| **cd**            | ディレクトリを移動                          | `..`, `-`                                               |
| **pwd**           | 現在の作業ディレクトリを表示                | なし                                                    |
| **mkdir**         | 新しいディレクトリを作成                    | `-p`                                                    |
| **rmdir**         | 空のディレクトリを削除                      | なし                                                    |
| **cp**            | ファイルやディレクトリをコピー              | `-r`, `-p`, `-v`                                        |
| **mv**            | ファイルやディレクトリを移動/リネーム       | `-i`, `-v`, `-n`                                        |
| **rm**            | ファイルやディレクトリを削除                | `-r`, `-f`, `-i`                                        |
| **touch**         | 空のファイルを作成またはタイムスタンプを更新| なし                                                    |
| **ln**            | リンクを作成                                | `-s`, `-f`                                              |
| **cat**           | ファイルの内容を表示                        | `-n`, `-E`                                              |
| **less**          | ファイルをページ単位で表示                  | `-N`, `/`（検索）                                        |
| **more**          | ファイルをページ単位で表示（lessの簡易版）  | なし                                                    |
| **head**          | ファイルの先頭部分を表示                    | `-n [数]`                                               |
| **tail**          | ファイルの末尾部分を表示                    | `-n [数]`, `-f`                                         |
| **grep**          | テキスト検索                                | `-i`, `-r`, `-n`, `-v`（否定検索）                      |
| **find**          | ファイルやディレクトリを検索                | `-name`, `-type`, `-exec`, `-mtime`（更新日で検索）      |
| **chmod**         | パーミッションを変更                        | `-R`, `u/g/o/a`, `+/-`（パーミッションの追加/削除）      |
| **chown**         | 所有者を変更                                | `-R`, `--from`                                          |
| **chgrp**         | グループを変更                              | `-R`                                                    |
| **sudo**          | 管理者権限でコマンドを実行                  | `-s`, `-u`, `-i`                                        |
| **ps**            | プロセスを表示                              | `-e`, `-f`, `aux`, `-ef`                                |
| **kill**          | プロセスを終了                              | `-9`, `-15`（通常終了）                                  |
| **killall**       | 指定した名前のプロセスを全て終了            | `-9`, `-u [ユーザー名]`                                 |
| **top**           | リアルタイムのプロセス情報を表示            | `-u [ユーザー名]`, `-p [PID]`                           |
| **htop**          | カラフルで使いやすいプロセスビューア        | なし                                                    |
| **df**            | ディスクの空き容量を表示                    | `-h`, `-T`, `-i`（inode情報を表示）                      |
| **du**            | ディレクトリの使用容量を表示                | `-h`, `-s`, `-d [深さ]`                                 |
| **free**          | メモリの使用状況を表示                      | `-h`, `-m`（MB単位）                                     |
| **ifconfig**      | ネットワークインターフェースを表示          | `-a`, `up`, `down`                                      |
| **ip**            | ネットワーク設定の表示・変更                | `addr`, `link`, `route`                                 |
| **ping**          | 接続先への疎通確認                          | `-c [数]`, `-i [間隔]`, `-s [サイズ]`                   |
| **traceroute**    | 経路を追跡して表示                          | `-n`（ホスト名を解決しない）                             |
| **netstat**       | ネットワーク接続やポートの情報を表示        | `-tuln`, `-p`                                           |
| **ss**            | ネットワークソケットの情報を表示            | `-tuln`, `-p`                                           |
| **ssh**           | リモートサーバーに接続                      | `-p`, `-i`, `-X`（X11フォワーディング）                  |
| **scp**           | ファイルをリモート間でコピー                | `-P`, `-r`, `-C`（圧縮転送）                             |
| **rsync**         | ファイルやディレクトリを同期                | `-avz`, `--delete`, `-e ssh`                            |
| **wget**          | ファイルをダウンロード                      | `-c`, `-O`, `-r`（再帰的にダウンロード）                 |
| **curl**          | データを転送                                | `-O`, `-L`, `-I`（ヘッダーのみ取得）                     |
| **ftp**           | FTPサーバーに接続                          | なし                                                    |
| **dig**           | DNSクエリを実行                            | `+short`, `@`（DNSサーバー指定）                         |
| **nslookup**      | DNS情報を取得                              | なし                                                    |
| **hostname**      | ホスト名を表示または設定                    | なし                                                    |
| **uname**         | システム情報を表示                          | `-a`, `-r`, `-s`                                        |
| **dmesg**         | カーネルのメッセージを表示                  | `-T`（タイムスタンプを人間読み可能に）                    |
| **lshw**          | ハードウェアの詳細情報を表示                | `-short`, `-C [クラス]`                                 |
| **lsusb**         | USBデバイスを一覧表示                      | `-v`（詳細情報）                                         |
| **lspci**         | PCIデバイスを一覧表示                      | `-v`（詳細情報）                                         |
| **lsmod**         | カーネルモジュールを一覧表示                | なし                                                    |
| **modprobe**      | カーネルモジュールを追加・削除              | `-r`（削除）                                             |
| **insmod**        | カーネルモジュールを挿入                    | なし                                                    |
| **rmmod**         | カーネルモジュールを削除                    | なし                                                    |
| **fdisk**         | ディスクパーティションを操作                | `-l`（パーティションを一覧表示）                          |
| **parted**        | ディスクパーティションを操作                | `-l`（パーティションを一覧表示）                          |
| **mkfs**          | ファイルシステムを作成                      | `-t [タイプ]`                                            |
| **mount**         | ファイルシステムをマウント                  | `-t [タイプ]`, `-o [オプション]`                         |
| **umount**        | ファイルシステムのマウントを解除            | なし                                                    |
| **df**            | ディスクの空き容量を表示                    | `-h`, `-T`                                              |
| **du**            | ディレクトリの容量を表示                    | `-h`, `-s`, `-d [深さ]`                                 |
| **dd**            | データのコピー・変換                        | `if=`, `of=`, `bs=`, `count=`                            |
| **fsck**          | ファイルシステムをチェック・修復            | `-y`（自動修復を許可）                                    |
| **lsblk**         | ブロックデバイスを表示                      | `-f`（ファイルシステム情報も表示）                         |
| **blkid**         | ブロックデバイスの属性を表示                | なし                                                    |
| **e2label**       | ext2/3/4ファイルシステムのラベルを表示・設定| なし                                                    |
| **swapoff**       | スワップ領域を無効化                        | なし                                                    |
| **swapon**        | スワップ領域を有効化                        | なし                                                    |
| **crontab**       | 定期的なタスクを設定                        | `-e`（編集）、`-l`（一覧表示）、`-r`（削除）               |
| **at**            | 一度だけのタスクを予約                      | なし                                                    |
| **batch**         | システムの負荷が低いときにコマンドを実行    | なし                                                    |
| **bg**            | ジョブをバックグラウンドで再開              | なし                                                    |
| **fg**            | ジョブをフォアグラウンドで再開              | なし                                                    |
| **jobs**          | 現在のジョブの一覧を表示                    | なし                                                    |
| **nohup**         | ログアウト後もコマンドを実行し続ける        | なし                                                    |
| **nice**          | プロセスの優先度を設定して実行              | `-n [値]`                                               |
| **renice**        | 実行中のプロセスの優先度を変更              | `-n [値]`, `-p [PID]`                                   |
| **strace**        | システムコールを追跡                        | `-p [PID]`, `-o [ファイル]`                             |
| **ltrace**        | ライブラリコールを追跡                      | `-p [PID]`, `-o [ファイル]`                             |
| **lsof**          | 開いているファイルを一覧表示                | `-i`, `-p [PID]`, `-u [ユーザー]`                       |
| **tcpdump**       | ネットワークパケットをキャプチャ            | `-i [インターフェース]`, `-nn`, `-w [ファイル]`         |
| **iftop**         | ネットワーク帯域幅をリアルタイムで表示      | `-i [インターフェース]`                                 |
| **nmap**          | ネットワーク探索およびセキュリティ監査      | `-sS`, `-p`, `-A`                                       |
| **netcat (nc)**   | ネットワーク接続の読み書き                  | `-l`, `-p`, `-e`（コマンド実行）                         |
| **telnet**        | リモートホストに接続                        | なし                                                    |
| **ftp**           | FTPサーバーに接続                          | なし                                                    |
| **scp**           | ファイルをリモート間でコピー                | `-P`, `-r`, `-C`                                        |
| **rsync**         | ファイルやディレクトリを同期                | `-avz`, `--delete`, `-e ssh`                            |
| **git**           | バージョン管理システム                      | `clone`, `commit`, `push`, `pull`, `status`             |
| **svn**           | バージョン管理システム                      | `checkout`, `commit`, `update`                          |
| **hg**            | Mercurialバージョン管理システム             | `clone`, `commit`, `push`, `pull`                       |
| **make**          | プログラムのビルドを自動化                  | `-j [プロセス数]`                                       |
| **gcc**           | C言語のコンパイラ                           | `-o`, `-Wall`, `-g`（デバッグ情報）                      |
| **gdb**           | デバッガ                                   | なし                                                    |
| **python**        | Pythonインタプリタ                          | `-m`, `-c`（コマンドを実行）                             |
| **perl**          | Perlインタプリタ                            | `-e`（コマンドを実行）                                    |
| **java**          | Java仮想マシン                              | `-jar`, `-cp`（クラスパス指定）                           |
| **php**           | PHPインタプリタ                             | `-r`（コードを実行）、`-f`（ファイルを実行）              |
| **node**          | Node.js実行環境                             | なし                                                    |
| **npm**           | Node.jsのパッケージ管理ツール               | `install`, `update`, `uninstall`                        |
| **pip**           | Pythonのパッケージ管理ツール                | `install`, `uninstall`, `list`                          |
| **gem**           | Rubyのパッケージ管理ツール                  | `install`, `uninstall`, `list`                          |
| **mysql**         | MySQLデータベースクライアント               | `-u`, `-p`, `-h`                                        |
| **psql**          | PostgreSQLデータベースクライアント           | `-U`, `-d`, `-h`                                        |
| **mongo**         | MongoDBシェル                               | `--host`, `--port`                                      |
| **redis-cli**     | Redisクライアント                           | `-h`, `-p`, `-a`（パスワード）                            |
| **docker**        | コンテナの管理ツール                        | `run`, `ps`, `images`, `exec`, `rm`                     |
| **kubectl**       | Kubernetesクライアント                      | `get`, `describe`, `apply`, `delete`, `logs`            |
| **vagrant**       | 仮想環境の管理ツール                        | `up`, `halt`, `destroy`, `status`                       |
| **ansible**       | 構成管理・デプロイツール                    | `playbook`, `inventory`, `ad-hoc`                       |
| **terraform**     | インフラ構成管理ツール                      | `init`, `plan`, `apply`, `destroy`                      |
| **aws**           | AWS CLIツール                               | `s3`, `ec2`, `configure`                                |
| **az**            | Azure CLIツール                             | `login`, `group`, `vm`, `storage`                       |
| **gcloud**        | Google Cloud CLIツール                      | `init`, `compute`, `config`                             |
| **htpasswd**      | Apache用のパスワードファイルを管理          | `-c`（新規作成）、`-b`（パスワードをコマンドラインで指定）|
| **openssl**       | 暗号化・証明書管理ツール                    | `genrsa`, `req`, `x509`                                 |
| **ssh-keygen**    | SSHキーを生成・管理                        | `-t`（キータイプ）、`-b`（ビット数）                      |
| **scp**           | ファイルをリモート間でコピー                | `-P`, `-r`, `-C`                                        |
| **sftp**          | SSHファイル転送クライアント                  | なし                                                    |
| **screen**        | 仮想ターミナルを作成・管理                  | `-S [セッション名]`, `-r`（再接続）                      |
| **tmux**          | 端末マルチプレクサ                          | なし                                                    |
| **weechat**       | 端末ベースのIRCクライアント                  | なし                                                    |
| **irssi**         | 端末ベースのIRCクライアント                  | なし                                                    |
| **mutt**          | 端末ベースのメールクライアント               | なし                                                    |
| **nano**          | シンプルなテキストエディタ                  | なし                                                    |
| **vim**           | 高機能なテキストエディタ                    | `-u`（設定ファイル指定）、`-R`（読み取り専用）            |
| **emacs**         | 高機能なテキストエディタ                    | `-nw`（端末モード）                                      |
| **sed**           | テキストの置換や編集                        | `-i`, `-e`                                              |
| **awk**           | テキスト処理とデータ操作                    | `-F`（フィールド区切り文字指定）、`-v`（変数指定）         |
| **cut**           | テキストの特定フィールドを抽出              | `-d`, `-f`                                              |
| **sort**          | テキストを並べ替え                          | `-n`, `-r`, `-k`（キー指定）                              |
| **uniq**          | 重複行を削除                                | `-c`, `-d`                                              |
| **tr**            | 文字列の変換・削除                          | `-d`（削除）、`-s`（連続する文字を1文字に）               |
| **paste**         | ファイルを横に連結                          | `-d`（デリミタ指定）                                      |
| **join**          | ファイルをキーで結合                        | `-1`, `-2`（キーのフィールド指定）                        |
| **diff**          | ファイルの差分を表示                        | `-u`, `-r`（ディレクトリを再帰的に比較）                   |
| **patch**         | 差分ファイルを適用                          | `-p`（パスのレベル指定）                                  |
| **wc**            | 行数、単語数、バイト数を表示                | `-l`, `-w`, `-c`                                         |
| **tee**           | 標準入力をファイルと標準出力に同時に出力    | `-a`（追記モード）                                        |
| **head**          | ファイルの先頭部分を表示                    | `-n [数]`                                               |
| **tail**          | ファイルの末尾部分を表示                    | `-n [数]`, `-f`                                         |
| **yes**           | 文字列を繰り返し表示                        | なし                                                    |
| **sleep**         | 一定時間待機                                | 秒数を指定                                               |
| **watch**         | コマンドを定期的に実行・表示                | `-n [間隔秒数]`                                         |
| **expr**          | 式を評価して結果を表示                      | なし                                                    |
| **bc**            | 任意精度の計算を行う                        | なし                                                    |
| **test**          | 条件を評価                                  | なし                                                    |
| **stat**          | ファイルの詳細情報を表示                    | なし                                                    |
| **file**          | ファイルの種類を判別                        | なし                                                    |
| **history**       | コマンド履歴を表示                          | `-c`（履歴をクリア）                                      |
| **alias**         | コマンドのエイリアスを作成                  | なし                                                    |
| **env**           | 環境変数を表示                              | なし                                                    |
| **export**        | 環境変数を設定                              | なし                                                    |
| **unset**         | 環境変数を削除                              | なし                                                    |
| **echo**          | 文字列を表示                                | `-e`, `-n`                                              |
| **date**          | 現在の日付と時刻を表示                      | `+%Y-%m-%d`（表示形式を指定）                             |
| **cal**           | カレンダーを表示                            | `-y`（今年のカレンダーを表示）                             |
| **who**           | 現在ログインしているユーザーを表示          | なし                                                    |
| **w**             | システムの稼働状況とユーザー情報を表示      | なし                                                    |
| **uptime**        | システムの稼働時間を表示                    | なし                                                    |
| **uname**         | システム情報を表示                          | `-a`                                                    |
| **hostname**      | ホスト名を表示または設定                    | なし                                                    |
| **sudo**          | 管理者権限でコマンドを実行                  | `-s`, `-u`                                              |
| **su**            | ユーザーを切り替え                          | `-`（ログインシェルを取得）                               |
| **passwd**        | ユーザーのパスワードを変更                  | なし                                                    |
| **useradd**       | 新しいユーザーを追加                        | `-m`（ホームディレクトリ作成）、`-s`（シェル指定）          |
| **userdel**       | ユーザーを削除                              | `-r`（ホームディレクトリも削除）                           |
| **groupadd**      | 新しいグループを追加                        | なし                                                    |
| **groupdel**      | グループを削除                              | なし                                                    |
| **id**            | ユーザーのUIDやGIDを表示                    | なし                                                    |
| **chmod**         | パーミッションを変更                        | `-R`, `u/g/o/a`                                         |
| **chown**         | 所有者を変更                                | `-R`                                                    |
| **chgrp**         | グループを変更                              | `-R`                                                    |
| **umask**         | デフォルトのパーミッションを設定            | なし                                                    |
| **setfacl**       | アクセス制御リスト（ACL）を設定             | `-m`, `-x`, `-b`（削除）                                 |
| **getfacl**       | アクセス制御リスト（ACL）を表示             | なし                                                    |