Linuxコマンドの基本を、カテゴリ別の一覧にまとめました。それぞれ書式・役割・実行例を添えてあります。
このページがほかのコマンド一覧と違うのは、すべてのコマンドをブラウザ上でそのまま練習できることです。各コマンドに「練習する」リンクがあり、クリックするとWebTerm Learnの該当レッスンが開きます。環境構築は不要、間違えても壊れるものはありません。読むだけで終わらせず、気になったコマンドはその場で打ってみてください。
ファイル・ディレクトリの基本操作
最初に覚えるべき、いちばん使用頻度の高いグループです。
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
pwd | pwd | 現在いるディレクトリ(カレントディレクトリ)のパスを表示する | レッスンへ |
cd | cd ディレクトリ | ディレクトリを移動する。cd .. で親へ、cd - で直前の場所へ | レッスンへ |
ls | ls [オプション] | ファイル・ディレクトリの一覧を表示する | レッスンへ |
mkdir | mkdir ディレクトリ名 | ディレクトリを作成する。-p で複数階層を一括作成 | レッスンへ |
touch | touch ファイル名 | 空のファイルを作成する(本来はタイムスタンプ更新コマンド) | レッスンへ |
mv | mv 移動元 移動先 | ファイルやディレクトリを移動する。名前の変更にも使う | レッスンへ |
cp | cp コピー元 コピー先 | ファイルやディレクトリをコピーする。ディレクトリは -r | レッスンへ |
rm | rm ファイル名 | ファイルを削除する。ディレクトリごと消すなら -r | レッスンへ |
rmdir | rmdir ディレクトリ名 | 空のディレクトリだけを削除する(中身があると失敗する安全なコマンド) | レッスンへ |
ln | ln -s 実体 リンク名 | シンボリックリンク(ショートカットのような参照)を作成する | レッスンへ |
よく使う形はこのあたりです。
ls -la # 隠しファイルを含めて詳細表示
mkdir -p app/src # 途中のディレクトリごと一括作成
cp -r docs backup # ディレクトリごとコピー
mv draft.txt notes/ # notesディレクトリへ移動
rm -i old.txt # 確認してから削除
ディレクトリは入れ子の構造になっていて、pwd や cd で扱う「パス」はその住所にあたります。
ファイルの中身を見る
ファイルの内容確認は、開くエディタを選ぶよりコマンドのほうが速い場面が多いです。
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
cat | cat ファイル名 | ファイルの中身を全部表示する。短いファイル向き | レッスンへ |
head | head -n 行数 ファイル名 | ファイルの先頭だけを表示する(既定は10行) | レッスンへ |
tail | tail -n 行数 ファイル名 | ファイルの末尾だけを表示する。ログの最新行の確認に定番 | レッスンへ |
less | less ファイル名 | 長いファイルをスクロールしながら読む。q で終了 | レッスンへ |
tail -n 20 access.log # ログの最新20行だけ確認
less error.log # 長いログをスクロール表示(qで終了)
探す・絞り込む
「あのファイルどこだっけ」「この文字列を含む行はどれだ」を解決するグループです。
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
find | find パス 条件 | 名前・種類・サイズなどの条件でファイルを探す | レッスンへ |
grep | grep パターン ファイル名 | ファイルの中からパターンに一致する行を探す | レッスンへ |
wc | wc -l ファイル名 | 行数・単語数・文字数を数える | レッスンへ |
find . -name "*.log" # カレント以下の .log を探す
grep -n "ERROR" server.log # ERROR を含む行を行番号つきで
grep -r "TODO" src/ # ディレクトリを再帰検索
wc -l access.log # ログの行数を数える
パイプとリダイレクト
コマンド単体ではなく「組み合わせ」こそがターミナルの真価です。記号ですがコマンドと同じくらい重要なので、ここに載せておきます。
| 記号 | 書式 | 説明 | 練習 |
|---|---|---|---|
| | コマンド1 | コマンド2 | 左の出力を右のコマンドの入力に渡す(パイプ) | レッスンへ |
> | コマンド > ファイル | 出力をファイルに書き出す(上書き) | レッスンへ |
>> | コマンド >> ファイル | 出力をファイルの末尾に追記する | レッスンへ |
grep "ERROR" app.log | wc -l # エラー行の件数を数える
ls -la > files.txt # 一覧をファイルに保存
echo "done" >> history.log # ログに1行追記
圧縮・アーカイブ
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
tar | tar -czf 名前.tar.gz 対象 | ファイルをまとめて圧縮(-czf)・展開(-xzf)する | レッスンへ |
tar -czf backup.tar.gz docs/ # docs を圧縮してまとめる
tar -xzf backup.tar.gz # 展開する
tar -tf backup.tar.gz # 中身を確認だけする
シェルの操作と設定
毎日の入力を速く・楽にするグループです。
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
echo | echo 文字列 | 文字列や変数の中身を表示する。echo $HOME など | レッスンへ |
alias | alias 名前='コマンド' | よく使うコマンドに短い別名をつける | レッスンへ |
export | export 変数名=値 | 環境変数を設定する | レッスンへ |
env | env | 環境変数の一覧を表示する | レッスンへ |
history | history | コマンド履歴を一覧表示する。矢印キーや Ctrl+R と併用 | レッスンへ |
man | man コマンド名 | コマンドのマニュアルを表示する | レッスンへ |
alias gs='git status' # よく打つコマンドを2文字に
echo $SHELL # 使っているシェルを確認
man ls # ls のマニュアルを読む(qで終了)
パーミッションと管理者権限
サーバー作業で避けて通れないグループです。「Permission denied」に出会ったらここに戻ってきてください。
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
chmod | chmod 権限 ファイル名 | ファイルの権限(読み・書き・実行)を変更する | レッスンへ |
chown | chown 所有者 ファイル名 | ファイルの所有者を変更する | レッスンへ |
sudo | sudo コマンド | 管理者(root)権限でコマンドを実行する | レッスンへ |
chmod +x deploy.sh # スクリプトに実行権限をつける
sudo chown app config.yml # 所有者を app ユーザーに変更
ユーザーとパッケージの管理
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
useradd | sudo useradd ユーザー名 | ユーザーを作成する | レッスンへ |
passwd | sudo passwd ユーザー名 | ユーザーのパスワードを設定する | レッスンへ |
apt | sudo apt install パッケージ | ソフトウェアの検索・インストール・更新を行う(Debian/Ubuntu系) | レッスンへ |
sudo apt update # パッケージ情報を最新化
sudo apt install tree # tree をインストール
プロセスとシステムの状態
「サーバーが重い」と言われたとき、最初に打つのがこのあたりです。
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
ps | ps aux | 実行中のプロセスを一覧表示する | レッスンへ |
top | top | CPU・メモリの使用状況をリアルタイム表示する。q で終了 | レッスンへ |
kill | kill プロセスID | プロセスを終了させる | レッスンへ |
df | df -h | ディスクの空き容量を表示する | レッスンへ |
du | du -h パス | ディレクトリごとの使用容量を表示する | レッスンへ |
free | free -h | メモリの使用状況を表示する | レッスンへ |
uname | uname -a | OSやカーネルの情報を表示する | レッスンへ |
ps aux | grep node # node のプロセスを探す
df -h # ディスク残量を人間が読める単位で
du -h -d 1 . # どのディレクトリが容量を食っているか
サービスと定期実行
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
systemctl | sudo systemctl status サービス | サービス(デーモン)の起動・停止・状態確認を行う | レッスンへ |
journalctl | journalctl -u サービス | サービスのログを確認する | レッスンへ |
crontab | crontab -e | 定期実行タスク(cron)を設定する | レッスンへ |
sudo systemctl restart nginx # nginx を再起動
journalctl -u nginx # nginx のログを確認
crontab -l # 設定済みの定期タスクを一覧
ネットワーク
| コマンド | 書式 | 説明 | 練習 |
|---|---|---|---|
ping | ping ホスト名 | 相手のサーバーと通信できるか確認する | レッスンへ |
curl | curl URL | URLにリクエストを送り、レスポンスを取得する。API確認の定番 | レッスンへ |
ssh | ssh ユーザー@ホスト | リモートのサーバーに安全に接続する | レッスンへ |
ping example.com # 疎通確認
curl -O https://example.com/data.json # ファイルをダウンロード
ssh app@203.0.113.10 # サーバーにログイン
一覧を「使えるコマンド」に変えるには
ここまでで、日常の作業に必要なコマンドはほぼ網羅しています。ただし、一覧を眺めて覚えられるなら誰も苦労しません。コマンドは英単語と同じで、実際に使った回数だけ手に馴染みます。
WebTerm Learnでは、この一覧のコマンドをブラウザ上の安全な環境で、実際に打ちながら順番に学べます。インストールも設定も不要で、間違えてもリセットすれば元通りです。
- ターミナル入門: pwd・cd・ls からファイル操作まで、いちばん最初の一歩
- ターミナル基礎: find・grep・パイプなど、実務で毎日使う道具
- ターミナル応用: パーミッション・プロセス・ネットワークなどサーバー管理の入り口
気になるコマンドがあったら、表の「レッスンへ」から今すぐ打ってみてください。