はじめに
RUNTEQ Advent Calendar 2025 の17日目を担当する やきやき と申します。
今年のテーマは『みんなにおすすめしたい〇〇tips』!
ということで、WSL (Windows Subsystem for Linux) / Macbook / 純粋にLinux CLI でターミナルを操作している方に向けて、個人的によく使っている便利なおすすめショートカット(キーバインド)をまとめてみました。
一度に多くを羅列してもエッセンスを吸収しきれないであろうとは思いますので、便利なショートカットを厳選した上で、実用度ごとにレベル(入門〜応用)を分けて記載をしています。
「自分は今このレベルだけ習得できればいいや!」というような形でお気軽に見ていただければと思います🌱
あるいは、他にもっと効率的なキーバインドがある場合、是非コメントで教えてください!
ターゲット
- ターミナル操作に慣れていない初学者の方
- ターミナル操作はそこそこ慣れているつもりだが、さらに効率を求めている方
ショートカットを実行できる環境
使用しているシェル(ターミナルで入力したコマンドを解釈して実行してくれるソフト) が zsh か bash であれば、紹介するショートカットは問題なく動作すると思います🙆
ご自身が使用しているシェルを知りたい場合は、以下コマンドでご確認ください。
echo $SHELL
※基本的に macOS は zsh、Linux(WSL含む) は bash がデフォルト。
本記事の読み取り方
以降、ショートカットを紹介する際に+や→という記号が登場しますが、それぞれ以下の意味となっています。
A + B
Aというキーを押しながら、Bというキーを押してください。
A → B
Aというキーを押して一度離してから、Bというキーを押してください。
【入門⭐️】 とりあえずこれだけは覚える!ショートカット
1. Tab
大体Qの左隣にある大きめのキーです (MacBook だとTabとは印字されていないかもしれません)。
コマンドを途中まで打ってTabを押すと、コマンドの続きが補完されます。
Tabを押しておけば、長いコマンドやファイル・ディレクトリ名を一文字ずつすべて入力する必要がなくなるというわけです。

2. 上下矢印キー
過去に実行したコマンド履歴を呼び出すことができます。
というわけで、直前に実行したコマンドを再実行したい場合は、再度同じコマンドを最初から入力せずとも上矢印キー→Enterするだけで済みます。
3. Control + A
カーソルをコマンドの文頭に持っていくことができます。
覚え方:アルファベットの"最初"に登場する「A」を使って、"文頭"にカーソルを移動させる!
4. Control + E
カーソルをコマンドの文末に持っていくことができます。
覚え方:end の「E」
【基礎⭐️⭐️】 手癖で使えると相当便利なショートカット
1. Control + W
コマンドを一気に削除したい時はこれ!カーソルの後ろにある部分をスペースごとに区切られた単位で削除できます。
覚え方:word の「W」
2. Control + Y
Control + Wで単語を切り取りすぎてしまった際、こちらのショートカットで直前に切り取ってしまった単語を貼り付けることができます。
覚え方:yank の「Y」
3. Control + U
単語ごとに削除!と言わず、カーソルの後ろにあるコマンドを全て削除できます。
覚え方:undo の「U」
【応用⭐️⭐️⭐️】 頻出ではないが、たまに輝くショートカット
1. Esc → .
直前に実行したコマンドの「最後の引数」を呼び出すことができます。
私はファイルを安全に削除したい時、一連の流れとして、念の為 vi app/sample.md でファイルの中身を見て、削除して問題ないファイルであることを確認した後、rm を入力してから esc → . → Enterしています。
Windows(WSL)の場合は、Altキーとの同時押し(Alt + .) でも動作します。1
2. Control + R
前述の通り、直近に実行したコマンドは上下矢印キーで呼び出すことができます。
ただ、「上下キーで呼び出すには履歴が過去すぎるけど、コマンドが長すぎて一から打ち込みたくない...!」な時もあると思うんですよね。
そんな時、このショートカットを使って過去に実行したコマンドの部分一致検索ができます。
- 検索で表示されたコマンドを実行したい場合、そのまま
Enterキーを押下 - 検索で表示されたコマンドを編集したい場合は、左右矢印キーを押下
- 検索を中止したい場合は、
Control+C
3. Esc → B / Esc → F
左右矢印キー を使ってちょこまか移動するのが疲れた時の救世主!単語ごとに大きくカーソル移動したい場合はこれが使えます。
Esc → Bでコマンド文頭に向かって移動、Esc → Fで文末に向かって移動できます。
Windows(WSL)の場合、Altキーとの同時押し(Alt + B / Alt + F) でも動作します。1
覚え方:「B」は back で後退、「F」は forward で前進!
ショートカット(キーバインド)をもっと探求したい方へ
zsh環境 (主にMacbookユーザー)
試しに bindkey -L を叩いてみると発見があるかもしれません。
bindkey -L を実行すると、現在使っているすべてのキーバインドが一覧で表示されます。
「^X とか ^[ とか、謎の暗号だらけ…」と思うかもしれませんが、この表記はとてもシンプルで、それぞれ以下の意味となっています。
-
^= Control- 例:
^Aは「Control + A」
- 例:
-
^[= Esc- 例:
^[.は「Esc → .」(メタキーを有効化すれば、「Option + .」でも可)1
- 例:
bash環境 (主に、WSLを含むLinuxユーザー)
bindkey は zsh のコマンドなので、bash では代わりに bind -P を利用します。
これで bash に設定されているキーバインドを一覧できます。
前述の bindkey -L より記号が出てきて圧倒されてしまいますが、おおまかには以下の形式です。
-
\C-= Ctrl- 例:
\C-bは 「Ctrl + B」
- 例:
-
\e= Esc もしくは Alt- 例:
\ecは 「Esc → C」もしくは「Alt + C」
- 例:
-
\e[= 矢印等のその他特殊キー
参考リンク
メタキー有効化
zsh環境キーバインド (man zshzle)
bash環境キーバインド (man readline)


