エンジニアの技術・コマンド早見表 (Ref.)

Linux チートシート

ファイル操作

  • ls -la 詳細 ↓

    ファイル一覧を詳細表示する

  • cd <dir> 詳細 ↓

    ディレクトリを移動する

  • mkdir -p <dir> 詳細 ↓

    ディレクトリを作成する

  • rm -rf <path> 詳細 ↓

    ファイルやディレクトリを削除する

  • cp -r <src> <dest> 詳細 ↓

    ファイルやディレクトリをコピーする

  • mv <src> <dest> 詳細 ↓

    移動または名前変更する

  • ln -s <target> <link> 詳細 ↓

    シンボリックリンクを作成する

権限操作

  • chmod <mode> <file> 詳細 ↓

    アクセス権限を変更する

  • chown <user>:<group> <file> 詳細 ↓

    所有者を変更する

検索・加工

  • grep -r "pattern" <dir> 詳細 ↓

    文字列を検索する

  • find <path> -name <pattern> 詳細 ↓

    ファイルを検索する

  • sed 's/old/new/g' <file> 詳細 ↓

    ストリームエディタで置換する

  • awk '{print $1}' 詳細 ↓

    テキストを整形・抽出する

  • tail -f <file> 詳細 ↓

    ファイルの末尾を監視する

アーカイブ

  • tar -czvf <archive> <dir> 詳細 ↓

    ファイルを圧縮・解凍する

  • rsync -av <src> <dest> 詳細 ↓

    高度なファイル同期・コピー

プロセス管理

  • ps aux 詳細 ↓

    実行中のプロセスを表示する

  • kill <pid> 詳細 ↓

    プロセスを終了させる

  • top / htop 詳細 ↓

    システムリソース状況を監視する

  • lsof -i :<port> 詳細 ↓

    開いているファイルを表示する

インフラ・管理

  • df -h 詳細 ↓

    ディスク容量を確認する

  • du -sh <dir> 詳細 ↓

    ディレクトリ容量を確認する

  • free -h 詳細 ↓

    メモリ使用状況を確認する

  • systemctl status <service> 詳細 ↓

    サービスの状態を確認・操作する

  • journalctl -u <service> 詳細 ↓

    サービスのログを確認する

  • ufw allow <port> 詳細 ↓

    ファイアウォールを設定する

ネットワーク

  • curl <url> 詳細 ↓

    URLへリクエストを送る

  • ssh <user>@<host> 詳細 ↓

    リモートサーバーに接続する

その他

  • history 詳細 ↓

    コマンド履歴を表示する

  • alias <name>='<command>' 詳細 ↓

    コマンドの別名を作成する

コードをクリックでコピー / 詳細へスクロール

詳細リファレンス

ls -la

ファイル一覧を詳細表示する

使用例

ls -la

解説

カレントディレクトリのファイルとディレクトリを、隠しファイル(.で始まる)含めて一覧表示します。権限、所有者、サイズ、更新日時などの詳細情報も同時に確認できます。

cd <dir>

ディレクトリを移動する

使用例

cd /var/log

解説

カレントディレクトリ(作業フォルダ)を変更します。`cd ..` で一つ上の階層へ、`cd ~` でホームディレクトリへ素早く移動できます。

mkdir -p <dir>

ディレクトリを作成する

使用例

mkdir -p project/src/assets

解説

新しいディレクトリを作成します。`-p` オプションを付けると、途中の階層が存在しない場合にそれらも自動的に作成してくれるため、エラーにならず便利です。

rm -rf <path>

ファイルやディレクトリを削除する

使用例

rm -rf old_project

解説

ファイルやディレクトリを削除します。`-rf` は確認なしで再帰的に強制削除する強力なオプションなので、実行前にパスをよく確認する必要があります。

cp -r <src> <dest>

ファイルやディレクトリをコピーする

使用例

cp -r /var/www/html /backup/html

解説

ファイルやディレクトリを複製します。`-r` オプションを付けることで、ディレクトリの中身も含めて再帰的に丸ごとコピーできます。

mv <src> <dest>

移動または名前変更する

使用例

mv file.txt new_file.txt

解説

ファイルを移動したり、ファイル名を変更したりする際に使用します。Linuxでは「移動」と「名前変更」は同じ操作として扱われます。

ln -s <target> <link>

シンボリックリンクを作成する

使用例

ln -s /etc/nginx/sites-available/app /etc/nginx/sites-enabled/

解説

ファイルやディレクトリへの参照(ショートカットのようなもの)を作成します。`-s` オプションでシンボリックリンクとなり、実体を複製せずにパスを通せます。

chmod <mode> <file>

アクセス権限を変更する

使用例

chmod 755 script.sh

解説

ファイルやディレクトリのアクセス権限(パーミッション)を変更します。755は所有者に全権限、その他に読み・実行権限を与える一般的な設定です。

chown <user>:<group> <file>

所有者を変更する

使用例

chown www-data:www-data index.php

解説

ファイルやディレクトリの所有ユーザーと所有グループを変更します。Webサーバーの権限トラブルを解決する際などによく使用されます。

grep -r "pattern" <dir>

文字列を検索する

使用例

grep -r "TODO" ./src

解説

ファイル内の文字列を検索します。`-r` でディレクトリ以下を再帰的に検索でき、ソースコード内の特定の関数やコメントを探すのに非常に便利です。

find <path> -name <pattern>

ファイルを検索する

使用例

find . -name "*.log"

解説

条件に一致するファイルやディレクトリを検索します。名前だけでなく、更新日時やファイルサイズでの検索も可能で、管理作業に必須です。

sed 's/old/new/g' <file>

ストリームエディタで置換する

使用例

sed -i 's/foo/bar/g' config.conf

解説

テキストデータをフィルタリング・変換します。`-i` オプションを使うと、ファイルの中身を直接書き換えて置換することができます。

awk '{print $1}'

テキストを整形・抽出する

使用例

ps aux | awk '{print $2}'

解説

テキストを列ごとに処理する強力なツールです。ログファイルから特定の列だけを抽出したり、集計したりする際に非常に役立ちます。

tar -czvf <archive> <dir>

ファイルを圧縮・解凍する

使用例

tar -czvf backup.tar.gz ./data

解説

複数のファイルをまとめてアーカイブ・圧縮します。`-czvf` で作成、`-xzvf` で解凍(展開)です。Linuxでのファイル配布やバックアップの標準形式です。

rsync -av <src> <dest>

高度なファイル同期・コピー

使用例

rsync -avz /source/ /backup/

解説

差分のみを転送する効率的なコピーコマンドです。ローカル間のバックアップはもちろん、SSH経由でのリモートサーバーとの同期にも最強のツールです。

tail -f <file>

ファイルの末尾を監視する

使用例

tail -f /var/log/nginx/access.log

解説

ファイルの末尾を表示します。`-f` オプションを付けると、追記される内容をリアルタイムで表示し続けるため、ログの監視に最適です。

ps aux

実行中のプロセスを表示する

使用例

ps aux | grep nginx

解説

システム上で実行されている全てのプロセスを詳細に表示します。CPUやメモリの使用状況を確認したり、特定のプロセスIDを調べる際に使用します。

kill <pid>

プロセスを終了させる

使用例

kill 1234

解説

指定したプロセスID(PID)のプログラムに終了シグナルを送ります。反応しない場合は `kill -9 <pid>` で強制終了させることができます。

top / htop

システムリソース状況を監視する

使用例

top

解説

システム全体のCPU、メモリ使用率や、負荷の高いプロセスをリアルタイムで更新表示します。`htop` はよりカラフルで操作しやすい改良版です。

lsof -i :<port>

開いているファイルを表示する

使用例

lsof -i :8080

解説

現在開かれているファイルやネットワーク接続を一覧表示します。特定のポートを使用しているプロセスを特定する際などによく使われます。

df -h

ディスク容量を確認する

使用例

df -h

解説

ファイルシステムのディスク使用状況を表示します。`-h` オプションで「GB」や「MB」などの読みやすい単位で表示してくれます。

du -sh <dir>

ディレクトリ容量を確認する

使用例

du -sh ./node_modules

解説

特定のディレクトリやファイルのディスク使用量を表示します。`-sh` で指定ディレクトリの合計サイズのみを簡潔に表示できます。

free -h

メモリ使用状況を確認する

使用例

free -h

解説

システムの物理メモリとスワップ領域の使用状況を表示します。`-h` オプションで見やすい形式になります。

systemctl status <service>

サービスの状態を確認・操作する

使用例

systemctl status nginx

解説

systemdで管理されるサービスの起動、停止、再起動、状態確認を行います。サーバー構築やトラブルシューティングで頻繁に使用するコマンドです。

journalctl -u <service>

サービスのログを確認する

使用例

journalctl -u nginx -f

解説

systemdが管理するジャーナルログを表示します。`-u` でサービス指定、`-f` で追跡表示ができ、エラー原因の調査に役立ちます。

ufw allow <port>

ファイアウォールを設定する

使用例

ufw allow 80/tcp

解説

Ubuntuなどで標準的に使われるファイアウォールの設定ツールです。ポートの開放やブロックを簡単なコマンドで管理できます。

curl <url>

URLへリクエストを送る

使用例

curl -I https://google.com

解説

URLを指定してデータを送受信します。Webサイトの表示確認や、APIの動作確認、HTTPヘッダーのチェックなど、ネットワークデバッグの万能ツールです。

ssh <user>@<host>

リモートサーバーに接続する

使用例

ssh user@192.168.1.10

解説

ネットワーク経由で他のコンピュータに安全にログインし、遠隔操作を行います。公開鍵認証の設定などを行うことで、セキュリティを高めることができます。

history

コマンド履歴を表示する

使用例

history | grep docker

解説

過去に実行したコマンドの履歴一覧を表示します。長いコマンドを再利用したい時や、以前実行した手順を思い出したい時に便利です。

alias <name>='<command>'

コマンドの別名を作成する

使用例

alias ll='ls -la'

解説

長いコマンドや頻繁に使うオプションの組み合わせに、短い別名を付けます。`.bashrc` などに記述して永続化することで作業効率が上がります。