💡 効くのは「毎日使う操作」から

時短術は数が多いので、全部覚える必要はありません。まずは Ctrl+R(履歴検索)、!!(直前コマンド)、エイリアス1〜2個から。1日に何度も使う操作ほど、投資が早く回収できます。

キーボードショートカット

行の中を移動・削除するキー操作。マウスや矢印キー連打から卒業できます(多くはEmacs流の操作)。

キー意味・用途
Ctrl+A / Ctrl+Eカーソルを行頭(A)/行末(E)へ一気に移動
Ctrl+U / Ctrl+Kカーソルより前(U)/後ろ(K)をまとめて削除
Ctrl+Wカーソル手前の1単語を削除。打ち間違いの修正に
Ctrl+Rコマンド履歴をインクリメンタル検索。最強の時短
Ctrl+C実行中のコマンドを中断(キャンセル)
Ctrl+D入力の終わり。空行で押すとログアウト/シェル終了
Ctrl+L画面をクリア(clearと同じ。履歴は消えない)
Ctrl+Z実行中の処理を一時停止(バックグラウンドへ送る前段)
Tab入力補完。ファイル名・コマンド名を自動で埋める。2回押しで候補一覧

履歴の活用

「さっき打ったあれ」をゼロから打ち直さないための機能です。

コマンド・記号意味・用途
history過去のコマンド一覧を番号付きで表示。history | grep 語で絞り込み
!!直前のコマンドをそのまま再実行
sudo !!「権限が足りない」と言われたとき、直前コマンドをsudo付きでやり直す定番技
!$直前コマンドの最後の引数を再利用。例 mkdir foo の後 cd !$
!番号historyで見た番号のコマンドを再実行。例 !142
!語その語で始まる直近のコマンドを実行。例 !git
Ctrl+R履歴を対話検索。打つほど候補が絞れる。もう一度 Ctrl+Rで次の候補

エイリアスで時短

長い・よく打つコマンドに短い別名を付けます。.bashrc / .zshrc に書けば毎回有効に。

設定例意味・用途
alias ll='ls -la'llで詳細一覧。定番中の定番
alias la='ls -A'隠しファイルも含めた一覧(...を除く)
alias ..='cd ..'1つ上の階層へ。alias ...='cd ../..'も便利
alias gs='git status'よく打つgitコマンドを短縮
alias grep='grep --color=auto'常に色付きに。既定オプションの上書きにも使える
# ~/.bashrc または ~/.zshrc の末尾に追記して保存
alias ll='ls -la'
alias ..='cd ..'

# 追記後は再読み込みで即反映(ターミナルを開き直してもOK)
$ source ~/.bashrc
✅ 設定ファイルはシェルで違う

bashなら ~/.bashrc、zsh(macOSの標準)なら ~/.zshrc に書きます。今使っているシェルは echo $SHELL で確認できます。書いた直後は source ファイル名 で読み直すとすぐ効きます。

ディレクトリ移動の技

行ったり来たりを速く。「戻る」を武器にしましょう。

コマンド意味・用途
cd -直前にいたディレクトリへ一発で戻る。2か所を往復するときに最強
cd ~ / cdホームディレクトリへ。~はホームを表す記号
cd ~/プロジェクト~を使えばどこからでもホーム基準の絶対パスで移動できる
pushd ディレクトリ今の場所を記憶しつつ移動(スタックに積む)
popdpushdで積んだ場所へ戻る。深い階層を渡り歩くときに便利

パイプの合わせ技

小さな道具を | でつなぐと、集計や件数確認が一行で終わります。UNIX思想の真骨頂。

合わせ技意味・用途
sort | uniq -c | sort -rn頻度集計。並べて→数えて→多い順に。ログ分析の万能パターン
grep 語 ファイル | wc -l語が何行あるかを件数で。エラー数のカウントなどに
... | head / ... | tail結果の先頭/末尾だけに絞る。長い出力を切り詰める
find . -name "*.log" | xargs rm見つけた各ファイルを引数にして次のコマンドへ。xargsで一括処理
... | xargs -I{} cp {} /backup/-I{}で位置を指定し、1件ずつ差し込んで実行
# アクセスログからIPを取り出し、多い順TOP5を集計
$ awk '{print $1}' access.log | sort | uniq -c | sort -rn | head -5
    512 203.0.113.9
    340 192.168.1.20
     87 198.51.100.5

# ERRORを含む行の件数だけ知りたい
$ grep "ERROR" app.log | wc -l
23

コマンドをつなぐ

複数のコマンドを1行で。条件付き実行を使うと、失敗時に止める安全な連結ができます。

記号意味・用途
A && BAが成功したときだけBを実行。例 make && make install
A || BAが失敗したときだけBを実行。例 ping -c1 host || echo NG
A ; B成否に関係なく順番に両方実行
A &Aをバックグラウンドで実行し、すぐ次の入力に戻る
A && B || C成功ならB、失敗ならC。簡単な分岐に。例 test -f f && echo OK || echo NG

SSHを快適に

毎回ホスト名やユーザーを打つのは手間。~/.ssh/config に書けば短い名前で接続できます。

コマンド意味・用途
ssh web1configで別名を定義すれば、この短さで接続できる(下の設定例参照)
ssh-keygen -t ed25519鍵ペアを作成。パスワードより安全な鍵認証の第一歩
ssh-copy-id web1公開鍵をサーバーに登録。以降パスワード入力なしで入れる
scp file web1:/tmp/ファイルを転送。configの別名がそのまま使える
rsync -avz 元 web1:先差分だけ効率よく同期。大量ファイルやバックアップに(-a属性保持 -z圧縮)
# ~/.ssh/config に書いておく設定例
Host web1
    HostName 203.0.113.10
    User deploy
    Port 22
    IdentityFile ~/.ssh/id_ed25519

# これで「ssh web1」だけで deploy@203.0.113.10 に鍵認証で接続できる
💡 SSHの仕組みをもっと知りたいなら

鍵認証や公開鍵暗号の考え方は、コンピュータ大全コース第11章で扱っています。「なぜ鍵のほうがパスワードより安全なのか」が腑に落ちると、設定の意味も見えてきます。

ターミナルの多重化(tmux / screen)

1つの画面で複数の作業を並行でき、しかも接続が切れても中の作業が生き残るのが最大の利点。長時間処理やリモート作業の必需品です。

コマンド・操作意味・用途
tmux新しいセッションを開始。この中で作業する
Ctrl+BDセッションから切り離す(デタッチ)。作業は裏で動き続ける
tmux ls動いているセッションの一覧を表示
tmux attach切り離したセッションに再接続。続きから作業できる
Ctrl+BC / % / "新ウィンドウ(C)/左右分割(%)/上下分割(")。画面を分けて並行作業
screen / screen -rtmuxの前からある同種ツール。開始/再接続。環境に応じて使い分け
✅ 「SSHが切れて処理が消えた」を防ぐ

リモートで長い処理を走らせるときは、先に tmux に入ってから始めましょう。回線が切れても処理は中で生き続け、tmux attach で戻れます。nohup でも似たことはできますが、対話的に見守れる tmux は運用でとくに重宝します。

安全のための技

速さと同じくらい大事なのが「取り返しのつく」作業。ひと手間で事故を減らせます。

意味・用途
ls で確認してから rm削除の前に、同じパターンを ls で当ててみて対象を目視。ワイルドカードの事故を防ぐ
rm -i ファイル1件ずつ確認しながら削除。重要な場所での定番
cp -i 元 先上書きの前に確認。cp --backup 元 先で既存をバックアップして上書き
alias rm='rm -i'常に確認付きに。ただし後述の注意も(過信は禁物)
コマンド || true失敗しても処理全体を止めたくないとき、あえて成功扱いにする(スクリプトで)
⚠️ alias rm='rm -i' に頼りすぎない

確認付きにするのは有効ですが、「自分の環境では毎回聞かれる」ことに慣れてしまうのが落とし穴です。別のマシンやスクリプト内ではエイリアスが効かず、確認なしで消えます。エイリアスはお守りと考え、根本は「実行前に ls で対象を確かめる」習慣で守りましょう。危険なコマンドを別名で隠して安心するのは逆効果です。

その他の時短

知っていると差がつく小技を最後にまとめて。

コマンド・記法意味・用途
echo {1..10}ブレース展開。1 2 ... 10に展開。mkdir day{01..31}で連番ディレクトリを一括作成
cp file{,.bak}ブレース展開の応用。cp file file.bakと同じ。手早くバックアップ
watch -n 2 コマンド2秒ごとに繰り返し実行して変化を監視。例 watch -n 2 df -h
time コマンドコマンドの実行にかかった時間を計測。性能比較に
コマンド > out.txt 2>&1結果もエラーもまとめてファイルへ(記号の意味は 📓 Linuxページ参照)
man コマンド / コマンド --help使い方を調べる基本。迷ったらまずここ。man内は /語で検索
🛡️ セキュリティ・運用の視点 — 便利さと安全のバランス

時短術は強力ですが、「速さ」と「安全」はときに逆を向きます。まず、危険をエイリアスで隠さないこと。alias rm='rm -rf' のように確認を省く別名は、事故を一発で招きます。省くなら「確認を足す方向(-i)」に。次に、コピペ実行の前に理解を。ネットで見つけた |&& でつながった長い一行や、curl ... | bash のような「取得してそのまま実行」は、中身を読まずに走らせると何をされるか分かりません。実行前に一度 lessecho で展開結果を確かめる、&& で不可逆な操作を安易につながない、といった小さな慎重さが身を守ります。便利技は「速く・かつ元に戻せる」形で使うのが、実務での正しい速さです(コンピュータ大全コース第6章・第7章)。