どのシェルでもパラメータレベルの対話型検索を実行できますか?

どのシェルでもパラメータレベルの対話型検索を実行できますか?

場合によっては、パスなどの特定の長いパラメータを再利用する必要があります。

CTRL履歴検索(+)を使用すると、パスRを含むいくつかのコマンドを見つけることができますが、それでも古いコマンドから他のエントリを削除してから、カーソルを移動して新しいコマンドを作成する必要があります。さらに悪いことは、連続して何度もできないということです。

パラメータレベルの履歴検索を提供するシェルがあるかどうかを知りたいです。

履歴コマンド(および引数)のタブの完成を確認すると、ある程度役立ちます。ただし、完了はサブストリングではなく入力したプレフィックスと一致する必要があります。

答え1

私が正しく理解したら、あなたはダイナミックな完全な歴史を追求しています(例えば、man bashまたはhttp://www.cl.cam.ac.uk/local/sys/unix/applications/bash/)、基本的にM-Tab

答え2

zshでは、新しいスタイルの完成が有効になります(compinit.zshrc_history_complete_word関数はこの機能を提供します。デフォルトでは、にバインドされている2つのウィジェット_history-complete-olderでアクセスできます。これら 2 つのコマンドは、現在の単語が前に付いたシェル履歴のすべての単語を繰り返します。_history-complete-newerESC ,ESC /

答え3

私のもの 入れるzsh-autocompleteこれで、次のことができます。

ここに画像の説明を入力してください。

ご覧のとおり、をタップして^R探している単語の一部を入力できます。

答え4

操作するにはALT-を使用してください。 、bashのマンページから:

- yank-last-arg (M-., M-_):
Insert the last argument to the previous command (the last word of
the previous history entry). With an argument, behave exactly like
yank-nth-arg. Successive calls to yank-last-arg move back through the
history list, inserting the last argument of each line in turn. The
history expansion facilities are used to extract the last argument,
as if the "!$" history expansion had been specified.

関連情報