サーバー上の複数のファイル間を頻繁に飛び回っています。次のコマンド例を順に実行します。
nano /web/site/path/to/file
/web/site/script.py
nano /web/site/path/to/anotherFile
nano /web/site/path/to/yetAnotherFile
/web/site/script.py
nano /web/site/path/to/etc
1つのnano
コマンドから次のコマンドに移動するには、現在押します Up そして Backspace パスの最後のセグメントを置き換えます。これの問題は、私が本当に本当に怠け者だということです。
以下のいずれかを実行できるキーボードショートカット(またはBashism)がありますか?
/
に戻るあなたが探していると思う Alt+Backspace ショートカット。
を押した後 Up これにより、前の/
またはspace
文字まで削除されます。
希望するようにWordを後方に強制終了するreadlineバインディングを検出するには、ターミナルで次のコマンドを使用できます。
bind -p | awk '/kill/ && /Word/ && /backward/'
デフォルトのUbuntuインストールでは、出力は次のようになります。
"\e\C-h": backward-kill-Word
# Shell-backward-kill-Word (not bound)
この時点では2行目は重要ではないように見えるので、1行目が何を意味するのか見てみましょう。私が理解していることから、前の特殊文字(backward-kill-Word
、/
、;
など)が実際にすべての文字を削除する ,
readline関数は、\e\C-h
キーシーケンスにバインドされています。さて、このシーケンスでは\e
represents Esc キー、\C
- Ctrl キー、および\C-h
は Ctrl+h which この場合は同等 with Backspace キー。
だから、あなたはを探していますEsc+Ctrl+hと同等のキーボードショートカットEsc+Backspaceおよびwhich、xtermの動作により、 Alt メタ文字として機能するキーとメタ文字は、文字自体が前に付いた2文字のシーケンスに変換されます Esc (man xterm
を参照)、と同等ですAlt+Backspace。
気に入らなくても忘れてしまう場合は、次のコマンドを使用して新しいショートカットを作成できます。 Esc+w、あなたの目的のために:
bind '"\ew": backward-kill-Word'
Readlineを使用するすべてのコマンドでこの新しいショートカットを常に永続的にするには、~/.inputrc
ファイルに次の行を追加します。
"\ew": backward-kill-Word
詳細については、help -m bind | sensible-pager
を参照してください。
別のキーの組み合わせは次のとおりです。
Alt+B それから Ctrl+K
Alt + B Move cursor backward one Word on the current line
Ctrl + K Clear the line after the cursor
Alt+B それから Alt+D
これにより、単語間の特殊文字を削除せずに最後の単語が削除されます。