リファレンス初級15分で読めます

Linuxコマンド一覧 - 基本コマンドを例つきで解説(ブラウザでそのまま練習できる)

Linuxコマンドをカテゴリ別の一覧で解説。pwd・cd・lsなどの基本操作からgrep・find・パーミッション・プロセス管理まで、書式と実行例つき。すべてのコマンドをブラウザ上の安全な環境でそのまま練習できます。

Linuxコマンドの基本を、カテゴリ別の一覧にまとめました。それぞれ書式・役割・実行例を添えてあります。

このページがほかのコマンド一覧と違うのは、すべてのコマンドをブラウザ上でそのまま練習できることです。各コマンドに「練習する」リンクがあり、クリックするとWebTerm Learnの該当レッスンが開きます。環境構築は不要、間違えても壊れるものはありません。読むだけで終わらせず、気になったコマンドはその場で打ってみてください。

レッスンではこのようなターミナルを自分で操作しながら学べます

ファイル・ディレクトリの基本操作

最初に覚えるべき、いちばん使用頻度の高いグループです。

コマンド書式説明練習
pwdpwd現在いるディレクトリ(カレントディレクトリ)のパスを表示するレッスンへ
cdcd ディレクトリディレクトリを移動する。cd .. で親へ、cd - で直前の場所へレッスンへ
lsls [オプション]ファイル・ディレクトリの一覧を表示するレッスンへ
mkdirmkdir ディレクトリ名ディレクトリを作成する。-p で複数階層を一括作成レッスンへ
touchtouch ファイル名空のファイルを作成する(本来はタイムスタンプ更新コマンド)レッスンへ
mvmv 移動元 移動先ファイルやディレクトリを移動する。名前の変更にも使うレッスンへ
cpcp コピー元 コピー先ファイルやディレクトリをコピーする。ディレクトリは -rレッスンへ
rmrm ファイル名ファイルを削除する。ディレクトリごと消すなら -rレッスンへ
rmdirrmdir ディレクトリ名空のディレクトリだけを削除する(中身があると失敗する安全なコマンド)レッスンへ
lnln -s 実体 リンク名シンボリックリンク(ショートカットのような参照)を作成するレッスンへ

よく使う形はこのあたりです。

ls -la              # 隠しファイルを含めて詳細表示
mkdir -p app/src    # 途中のディレクトリごと一括作成
cp -r docs backup   # ディレクトリごとコピー
mv draft.txt notes/ # notesディレクトリへ移動
rm -i old.txt       # 確認してから削除

ディレクトリは入れ子の構造になっていて、pwdcd で扱う「パス」はその住所にあたります。

home/user/docs/report.txt
/home/user/docs というパスは、フォルダの入れ子を外から順に辿った住所

ファイルの中身を見る

ファイルの内容確認は、開くエディタを選ぶよりコマンドのほうが速い場面が多いです。

コマンド書式説明練習
catcat ファイル名ファイルの中身を全部表示する。短いファイル向きレッスンへ
headhead -n 行数 ファイル名ファイルの先頭だけを表示する(既定は10行)レッスンへ
tailtail -n 行数 ファイル名ファイルの末尾だけを表示する。ログの最新行の確認に定番レッスンへ
lessless ファイル名長いファイルをスクロールしながら読む。q で終了レッスンへ
tail -n 20 access.log   # ログの最新20行だけ確認
less error.log          # 長いログをスクロール表示(qで終了)

探す・絞り込む

「あのファイルどこだっけ」「この文字列を含む行はどれだ」を解決するグループです。

コマンド書式説明練習
findfind パス 条件名前・種類・サイズなどの条件でファイルを探すレッスンへ
grepgrep パターン ファイル名ファイルの中からパターンに一致する行を探すレッスンへ
wcwc -l ファイル名行数・単語数・文字数を数えるレッスンへ
find . -name "*.log"          # カレント以下の .log を探す
grep -n "ERROR" server.log    # ERROR を含む行を行番号つきで
grep -r "TODO" src/           # ディレクトリを再帰検索
wc -l access.log              # ログの行数を数える

パイプとリダイレクト

コマンド単体ではなく「組み合わせ」こそがターミナルの真価です。記号ですがコマンドと同じくらい重要なので、ここに載せておきます。

grepwc|
パイプは左のコマンドの出力を右のコマンドへ流すトンネル
記号書式説明練習
|コマンド1 | コマンド2左の出力を右のコマンドの入力に渡す(パイプ)レッスンへ
>コマンド > ファイル出力をファイルに書き出す(上書き)レッスンへ
>>コマンド >> ファイル出力をファイルの末尾に追記するレッスンへ
grep "ERROR" app.log | wc -l   # エラー行の件数を数える
ls -la > files.txt             # 一覧をファイルに保存
echo "done" >> history.log     # ログに1行追記

圧縮・アーカイブ

コマンド書式説明練習
tartar -czf 名前.tar.gz 対象ファイルをまとめて圧縮(-czf)・展開(-xzf)するレッスンへ
tar -czf backup.tar.gz docs/   # docs を圧縮してまとめる
tar -xzf backup.tar.gz         # 展開する
tar -tf backup.tar.gz          # 中身を確認だけする

シェルの操作と設定

毎日の入力を速く・楽にするグループです。

コマンド書式説明練習
echoecho 文字列文字列や変数の中身を表示する。echo $HOME などレッスンへ
aliasalias 名前='コマンド'よく使うコマンドに短い別名をつけるレッスンへ
exportexport 変数名=値環境変数を設定するレッスンへ
envenv環境変数の一覧を表示するレッスンへ
historyhistoryコマンド履歴を一覧表示する。矢印キーや Ctrl+R と併用レッスンへ
manman コマンド名コマンドのマニュアルを表示するレッスンへ
alias gs='git status'   # よく打つコマンドを2文字に
echo $SHELL             # 使っているシェルを確認
man ls                  # ls のマニュアルを読む(qで終了)

パーミッションと管理者権限

サーバー作業で避けて通れないグループです。「Permission denied」に出会ったらここに戻ってきてください。

コマンド書式説明練習
chmodchmod 権限 ファイル名ファイルの権限(読み・書き・実行)を変更するレッスンへ
chownchown 所有者 ファイル名ファイルの所有者を変更するレッスンへ
sudosudo コマンド管理者(root)権限でコマンドを実行するレッスンへ
chmod +x deploy.sh        # スクリプトに実行権限をつける
sudo chown app config.yml # 所有者を app ユーザーに変更

ユーザーとパッケージの管理

コマンド書式説明練習
useraddsudo useradd ユーザー名ユーザーを作成するレッスンへ
passwdsudo passwd ユーザー名ユーザーのパスワードを設定するレッスンへ
aptsudo apt install パッケージソフトウェアの検索・インストール・更新を行う(Debian/Ubuntu系)レッスンへ
sudo apt update            # パッケージ情報を最新化
sudo apt install tree      # tree をインストール

プロセスとシステムの状態

「サーバーが重い」と言われたとき、最初に打つのがこのあたりです。

コマンド書式説明練習
psps aux実行中のプロセスを一覧表示するレッスンへ
toptopCPU・メモリの使用状況をリアルタイム表示する。q で終了レッスンへ
killkill プロセスIDプロセスを終了させるレッスンへ
dfdf -hディスクの空き容量を表示するレッスンへ
dudu -h パスディレクトリごとの使用容量を表示するレッスンへ
freefree -hメモリの使用状況を表示するレッスンへ
unameuname -aOSやカーネルの情報を表示するレッスンへ
ps aux | grep node   # node のプロセスを探す
df -h                # ディスク残量を人間が読める単位で
du -h -d 1 .         # どのディレクトリが容量を食っているか

サービスと定期実行

コマンド書式説明練習
systemctlsudo systemctl status サービスサービス(デーモン)の起動・停止・状態確認を行うレッスンへ
journalctljournalctl -u サービスサービスのログを確認するレッスンへ
crontabcrontab -e定期実行タスク(cron)を設定するレッスンへ
sudo systemctl restart nginx   # nginx を再起動
journalctl -u nginx            # nginx のログを確認
crontab -l                     # 設定済みの定期タスクを一覧

ネットワーク

コマンド書式説明練習
pingping ホスト名相手のサーバーと通信できるか確認するレッスンへ
curlcurl URLURLにリクエストを送り、レスポンスを取得する。API確認の定番レッスンへ
sshssh ユーザー@ホストリモートのサーバーに安全に接続するレッスンへ
ping example.com                 # 疎通確認
curl -O https://example.com/data.json   # ファイルをダウンロード
ssh app@203.0.113.10             # サーバーにログイン

一覧を「使えるコマンド」に変えるには

ここまでで、日常の作業に必要なコマンドはほぼ網羅しています。ただし、一覧を眺めて覚えられるなら誰も苦労しません。コマンドは英単語と同じで、実際に使った回数だけ手に馴染みます。

WebTerm Learnでは、この一覧のコマンドをブラウザ上の安全な環境で、実際に打ちながら順番に学べます。インストールも設定も不要で、間違えてもリセットすれば元通りです。

気になるコマンドがあったら、表の「レッスンへ」から今すぐ打ってみてください。

関連コース

実際に手を動かして学んでみませんか?

関連記事

記事一覧に戻る