web-dev-qa-db-ja.com

Bash:カーソルの前のWordを削除します

次のbashコマンドラインを検討します。^はカーソルの位置を示します。

svn commit -m very/long/path/to/some/file "[bug 123456] Fix the pixel issue"
              ^

同じメッセージで別のファイルをコミットしたいと思います。カーソル位置から次のスペースまで、現在のWordを削除するにはどうすればよいですか?後方削除のショートカットもありますか?カーソルを最初のスペースに後方に形成しますか?

更新: ctrl+w 後方に消去しますが、どのショートカットが1つのワードを前方に消去しますか?

74
Adam Matan

同様の質問に答えました nix.stackexchange.com

Bashには、デフォルトでバインドされていないreadlineコマンドがあります。参照でそれらを見つけることができます: http://www.gnu.org/software/bash/manual/html_node/Bindable-Readline-Commands.html#Bindable-Readline-Commands

探しているコマンドは「Shell-backward-kill-Word」と呼ばれます。最初にショートカットを選択する必要があります。 「前のコマンド」であるため、Crtl + pを使用しましょう-上矢印と同じです。

bind '"\C-p": Shell-backward-kill-Word'

唯一の違いは、前方に削除するため、代わりに「Shell-kill-Word」コマンドを使用する必要があることです。

「kill-word」コマンドもあります Meta+d ショートカット(試してみる Esc+d メタキーがない場合)。パスの一部のみを一度に削除します。

56
Nykakin

両方をテストした esc+d そして alt/opt+d OSX Mavericks上で動作し、同様に動作します。

7
visyoual