トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

bashコマンドライン編集機能

bashコマンドライン編集機能

bashには強力なコマンドライン編集機能がある。その操作法はemacsとviに準じたものがある。標準はemacsモードである。コマンド実行の履歴はファイルとして保存される。このコマンド実行履歴を編集する機能がコマンドライン編集機能である。

 カーソルの移動コマンド

コマンド 意味
Ctrl-F 右へ1文字移動
Ctrl-B 左へ1文字移動
ESC-F 右へ1ワード移動
ESC-B 左へ1ワード移動
Ctrl-A 行頭へ移動
Ctrl-E 行末へ移動
Ctrl-P 前の行へ移動
Ctrl-N 次の行へ移動
ESC-< 履歴の先頭へ移動
ESC-> 履歴の末尾へ移動

 削除コマンド

コマンド 意味
DEL カーソル位置の文字を1文字削除。カーソル位置は変わらず、カーソル以降文字列が左へ移動する。
Ctrl-D
BackSpace 科ソールより左側の文字を1文字削除。カーソルは左へ移動する。
Ctrl-H
ESC-DEL 右側1ワードを削除
ESC-Ctrl-H 左側1ワードを削除
ESC-D
Ctrl-K カーソル位置以降をすべて削除

 テキスト補完命令

bashの便利な機能の一つ。コマンドファイル名をすべて覚えていなくてもbashが足りない部分を補ってくれる。
コマンド 意味
TAB 標準的な補完
ESC-? 補完候補一覧の表示
ESC-! コマンドとして補完
Ctrl-X ! コマンドとしての補完一覧表示
ESC-TAB 履歴の中から補完
ESC-/ ファイル名として補完
Ctrl-X / ファイル名としての補完一覧表示

 履歴の展開

次のコマンドコマンド実行履歴を利用できる。
コマンド 意味
!! 直前のコマンドを実行
!n 履歴のn番目のコマンドを実行
!-n n個前の履歴を実行
!文字列 文字列で始まる直近の履歴を実行
!?文字列 文字列を含む直近の履歴を実行
^文字列1^文字列2 文字列1文字列2に置換して履歴を実行