Linuxでデフォルトのログインシェルといえばbash。sshで接続するにしても、bashは必ず使うものだ。
今回は、そんなbashで利用できるショートカットキー(キーバインド)で覚えておくと便利なものをピックアップしてみた。

1.カーソル移動系

カーソルを移動する際に便利なショートカットキー。
こうしてみると、意外と知らなかったショートカットキーがあったりする。

コマンド 機能
Ctrl + a (Homeキー) カーソルを行の先頭に移動する
Ctrl + e (Endキー) カーソルを行の最後に移動する
Ctrl + b (←キー) カーソルを一文字戻す
Ctrlf (→キー) カーソルを一文字進める
Altb 一単語分(スペース区切り)カーソルを戻す
Altf 一単語分(スペース区切り)カーソルを進める
Ctrl + xx カーソルの位置を記憶する (再度同じキーを実行すると、最初に記憶したカーソルの位置に戻る)

2.コマンド履歴系

コマンドの履歴を利用する際のショートカットキー。
上下キーでの履歴表示は多くの人が使っているだろうが、それ以外のキーあまり知られていないと思う。

コマンド 機能
Ctrl + p (↑キー) コマンドの一つ前の履歴を呼び出す
Ctrl + n (↓キー) コマンドの一つ後の履歴を呼び出す
Alt + < 記録されている最初の履歴を呼び出す
Alt + > 記録されている最後の履歴を呼び出す
Ctrl + r コマンドの履歴を検索する (検索キーワード入力後、Ctrl + rで履歴を選ぶ) 途中で抜ける場合はCtrl + gキーを実行する
Ctrl + o 現在選択されている履歴を実行後、次の履歴を選択する
Alt + r 履歴内容の編集を元に戻す(選択していた履歴の状態に戻す)
Alt + . 最後に実行された履歴の引数を出力する

3.編集系

カーソル上の文字を編集する際に使えるショートカットキー。
文字の削除の他、コピーや切り取り、貼り付けといったことも可能だ。

コマンド 機能
Ctrld (Deleteキー) カーソル位置の文字を削除する
Ctrl + h (Backspaceキー) カーソル位置の左の文字を削除する
Ctrl + w カーソル位置の左の単語を削除する(クリップボードに切り取る)
Alt + d カーソル位置の右の単語を削除する(クリップボードに切り取る)
Ctrl + u カーソル位置の左側を全て削除する(クリップボードに切り取る)
Ctrl + k カーソル位置の右側を全て削除する(クリップボードに切り取る)
Ctrl + y 切り取った文字(Ctrl + w,u,k)を貼り付ける
Alt + t スペース区切りでカーソル位置の単語と前の単語を入れ替える
ESC + t スペース区切りでカーソル位置の単語と後ろの単語を入れ替える
Ctrl + t カーソル位置の文字と一つ前の文字を入れ替える
Alt + u カーソル位置より右側の小文字を全て大文字にする(単語単位)
Alt + l カーソル位置より右側の大文字を全て小文字にする(単語単位)
Alt + c カーソル位置の文字を小文字⇔大文字に変換する (変換後、単語の最後にカーソル位置を移動する)
Ctrl + _ 変更を元に戻す(ExcelなどのCtrl + zと同じ)

4.画面表示系

画面表示について操作出来るショートカットキー。

コマンド 機能
Ctrl + l 画面をクリアする(clearコマンド相当)
Ctrls 画面表示を停止する (Ctrl + qで再開する)
Shift + PageUp 画面の表示を一画面分上に移動する
Shift + PageDown 画面の表示を一画面分下に移動する

5.その他

その他、使えると便利なショートカットキーを記述する。

コマンド 機能
Ctrl + c 現在実行しているプロセスを終了(kill -2)する
Ctrl + \ 現在実行しているプロセスを中止(kill -3)する
Ctrl + z 現在実行しているプロセスを一時停止する(fgコマンドで再開する)
Tab (Ctrl + i) 入力中のコマンドやPATHを補完する
Alt + @ /etc/hostsからホスト名を補完する
Alt + ~ /etc/passwdからユーザ名を補完する
Alt + $ シェル変数を補完する
Ctrl + x bashのバージョンを出力する
Ctrl + v bashのバージョンを出力する
Ctrl + d exitする(ログアウトする)

いかがだっただろうか。
知ってるもの、知らないものあったと思うが、呼んだ人がより簡単、早くにコンソール操作が行えるようになってくれたら幸いである。