bash - 履歴で編集中の現在のコマンドの最初の引数を取得するか、それと似ていますか? [コピー]

bash - 履歴で編集中の現在のコマンドの最初の引数を取得するか、それと似ていますか? [コピー]

私はしばしばbashプロンプトにコマンドを書き、現在の行の前の引数を取得してコマンドの他の場所に配置しようとします。

簡単な例は、ファイル名を変更したい場合です。私はできます。

  • キーmv入力
  • 移動したいファイル名を入力し、~/myTestFileWithLongFilename.txt
  • 今度は再入力せずに、最初のパラメータに指定したファイルの拡張子を変更したいと思います。

最初の引数を自動補完するために、どういうわけか履歴やbashの補完を使用できますか?

$ mv ~/myTestFileWithLongFilename.txt ~/myTestFileWithLongFilename.md

もちろん、不完全なコマンドを実行して履歴に入れてから参照できることを知っています!$

ベストアンサー1

可能ですが少し面倒です。 bashは!#入力された行全体を意味します。:この場合、後に引用する特定の単語を指定できます!#:1shell-expand-line組み込みのreadlineキーバインディングControl--Altを使用して拡張できますe

おすすめ記事