Bashで利用できるショートカットキー一覧

作成日:   更新日:

本ページでは、LinuxやMacのターミナルで利用される bash のショートカットキーの一覧を掲載します。

ショートカットキー一覧#

数が多いため省略してしまっているものもありますのでご了承ください。

移動

キー

説明

Ctrl-a

行頭にカーソルを移動

Ctrl-e

行末にカーソルを移動

Ctrl-f

1文字先へ移動 (forward)、矢印の右キーと同じ

Ctrl-b

1文字先へカーソル移動 (backword)、矢印の左キーと同じ

Alt-f

1単語先へ移動 (forward-word)

Alt-b

1単語前へカーソル移動 (backword)

Ctrl-l

画面表示をクリア[1]

履歴制御

キー

説明

Ctrl-p

1つ前に実行したコマンドを表示、矢印の上キーと同じ

Ctrl-e

1つ後に実行したコマンドを表示、矢印の下キーと同じ

Alt-<

1番初めの履歴を表示

Alt->

1番最後の履歴を表示、要するに現在の行を表示

Ctrl-r

現在より前の履歴からコマンドを部分一致で検索 (インクリメンタルサーチ)[2]

Ctrl-s

現在より後の履歴からコマンドを部分一致で検索 (インクリメンタルサーチ)[2]

Alt-p

現在より前の履歴からコマンドを部分一致で検索 (ノンインクリメンタルサーチ)[3]

Alt-n

現在より後の履歴からコマンドを部分一致で検索 (ノンインクリメンタルサーチ)[3]

Ctrl-Alt-e

変数やcommand substitutionを展開する

テキスト編集

キー

説明

Ctrl-d

現在行に他に文字が入力されていない場合、EOF(End Of File)を送信する。シェルが閉じてしまうので注意。[4]

Ctrl-d

現在行に他に文字が入力されている場合、現在のカーソル位置の文字を削除する、Delキーと同じ

Ctrl-v

このキーの後押下したキーをそのまま文字として出力する

Ctrl-t

1つ手前の文字と一緒にカーソルを右に移動する

Alt-t

1つ手前あるいは現在位置の単語を次の単語と入れ替える

Alt-u

現在位置の文字の大文字・小文字を入れ替える

Alt-l

現在位置の文字を小文字にする

Alt-c

現在位置の文字を大文字にする

削除(コピー)と貼り付け

キー

説明

Ctrl-k

現在のカーソル位置以降の文字をすべて削除する

Ctrl-x Backspace

現在のカーソル位置より前の文字をすべて削除する

Ctrl-u

現在のカーソル位置より前の文字をすべて削除する、見たところ挙動は Ctrl-x Backspace と同じ?

Alt-d

現在のカーソル位置の次にある単語を削除する

Alt-Backspace

現在のカーソル位置の前にある単語を削除する

Ctrl-w

現在のカーソル位置の前にある単語を削除する (「単語」の判定が Alt-Backspace と異なる。)

Alt-\

現在のカーソル位置周辺にあるスペース・水平タブをすべて削除する

Ctrl-y

Kill ring[5] の最新位置にある文字列を現在カーソル位置に貼り付ける

Alt-y

Kill ring のカーソル位置を入れ替える

キーボードマクロ

キー

説明

Ctrl-x (

キーボードマクロの記録開始

Ctrl-x )

キーボードマクロの記録終了

Ctrl-x e

最後に記録したキーボードマクロの実行

Undo などそのほかのコマンド

キー

説明

Ctrl-x Ctrl-u

直近の操作を取り消す (Undo)

Alt-r

現在行へのすべての操作を取り消す。Undoを戻れるところまで実施するのと同義

Alt-#

現在行の先頭にコメント記号 # を入力し次の行へ移動する

Ctrl-x Ctrl-v

シェルのバージョンを表示する

ショートカットキーを操作しているひと#

ショートカットキーを理解し、bashへのコマンドとして渡しているのは Readline というプログラムのようです。 man bash などで bash の man ファイルを開き、 Readline で検索すると本ページの元ネタを見ることができます。

調べてみると、全然使ったことないけど便利そうな機能がいくつかあるのを発見しました。キーボードマクロは簡単な操作の繰り返しとかに使えそうですね。

Linux
bash