!nを使用します。ここで、(n)は、history|lessで見つけたコマンドプロンプトで実行したい履歴ファイルの行を実行するための行番号です。
しかし、手動で変更したいコマンドライン履歴イベントがあります。履歴イベントの内容を実際に実行せずにコマンドラインに挿入して、変更してからReturnキーを押すにはどうすればよいですか?
最高、
承認された回答:
履歴置換後にコマンドを実行するのではなく印刷するように要求するには、:p
を追加します。 修飾子、例: !42:p
。結果のコマンドも履歴に入力されるため、上を押すことができます 編集します。
histverify
がある場合 オプションセット(shopt -s histverify
)、履歴置換の結果を編集する機会が常にあります。
fc
組み込みでは、履歴拡張へのアクセスが制限され(単語指定子なし)、外部エディターで前のコマンドを編集できます。
!prefix
を使用できます prefix
で始まる最後のコマンドを参照する 、および!?substring
substring
で始まる最後のコマンドを参照する 。探しているものがわかっている場合、これによりhistory | less
。
以前の履歴を検索する別の方法は、増分検索です。 Ctrlを押します。 + R 探しているものの部分文字列の入力を開始します。 Ctrlを押します + R これまでに発生した検索文字列に移動し、 Ctrl + S 行き過ぎた場合。 Ctrl以外のほとんどのキー + R 、 Ctrl + S 、バックスペース 通常の文字はインクリメンタルサーチを終了し、通常の効果を発揮します(たとえば、矢印キーを使用して、到達した行にカーソルを移動します。 Enter コマンドを実行します。