私はしばしばbashプロンプトにコマンドを書き、現在の行の前の引数を取得してコマンドの他の場所に配置しようとします。
簡単な例は、ファイル名を変更したい場合です。私はできます。
- キー
mv
入力 - 移動したいファイル名を入力し、
~/myTestFileWithLongFilename.txt
- 今度は再入力せずに、最初のパラメータに指定したファイルの拡張子を変更したいと思います。
最初の引数を自動補完するために、どういうわけか履歴やbashの補完を使用できますか?
$ mv ~/myTestFileWithLongFilename.txt ~/myTestFileWithLongFilename.md
もちろん、不完全なコマンドを実行して履歴に入れてから参照できることを知っています!$
。
ベストアンサー1
可能ですが少し面倒です。 bashは!#
入力された行全体を意味します。:
この場合、後に引用する特定の単語を指定できます!#:1
。shell-expand-line
組み込みのreadlineキーバインディングControl--Altを使用して拡張できますe。