コマンドライン編集ショートカット的なものをすこしだけ勉強した。
- ctrl+b
- 後方に1文字移動。
- ctrl+f
- 前方に1文字移動。
- ctrl+a
- 行頭へ移動。
- ctrl+e
- 行末へ移動。
- alt+b
- 後方に単語1つぶん移動。altはmetaキーに割り当てられている?。
- alt+f
- 前方に単語1つぶん移動。
- ctrl+h
- カーソル位置の後方に1文字削除。back spaceと同じ。
- ctrl+d
- カーソル位置の1文字を削除。
- ctrl+w
- 後方にスペース区切りで1単語削除。
- ctrl+k
- カーソル位置から行末までを削除する。シェルに削除した部分が記録される。カット。
- ctrl+u
- カーソルいちから行頭までを削除する。シェルに削除した部分が記録される。カット。
- ctrl+y
- 最後に削除した内容を挿入する。ヤンク。
- ctrl+s
- 画面をロック。ロック中に入力した文字列は入力解除後に一気に表示される。
- ctrl+q
- 画面ロック解除。
- 実行中にctrl+c
- 強制終了。
- ctrl+l
- 画面を消去し、ウィンドウ左上にプロンプト・入力中のコマンドライン表示。
- tab
- 補完機能が働く。
- echoコマンドを補完したいとき、自分の環境ではechを入力後、tab入力でecho が入力できた。ec入力後tabで補完しようとするとベルが鳴る。もう一度tab入力すると、ec2metadata echoが表示される。頭にecを含む二つのコマンドがスペース区切りで表示され、プロンプト$が返ってくる。
- ctrl+pまたは↑
- 1つ前のコマンド履歴に移動。(一つ前に入力したコマンドが入力した状態になる)pはprevious.
- ctrl+nまたは↓
- 次のコマンド履歴に移動。↑↑で2つ前に入力したコマンドが、↑↑↓で1つ前に入力したコマンドが入力した状態になる。nはnext.
- ctrl+r
- 履歴をさかのぼってインクリメンタル検索をする。入力すると(reverse-i-search)`':となり、入力待ちになる。
- ecと入力すれば、(reverse-i-search)`ec':echo Helloみたいな感じになる。(理由は直前にecho Helloを実行していたから)この状態でenterキーを押すとecho Helloが実行されたことになり、ctrl+rを押せばさらに1つ前の検索結果へ移動する。
- コマンドラインを修正してから実行したい場合はesc。
- ctrl+gで検索結果を破棄し、プロンプトへ戻る
- 履歴をさかのぼってインクリメンタル検索をする。入力すると(reverse-i-search)`':となり、入力待ちになる。