履歴からコマンドをロードしたがまだ実行されていないため、変更できます。

履歴からコマンドをロードしたがまだ実行されていないため、変更できます。

Bashでは方法を知っています。

history |grep foo

これにより、fooを含む履歴に番号が付けられたコマンドのリストが表示されます。他のパラメータを使用してこれらのコマンドのいずれかを実行するには、マウスを使用してコピーして貼り付けます。正確なコマンドを繰り返したくありません。プロンプトからロードし、いくつか変更し、実行したいと思います。これを行う方法はありますか?上矢印が常に機能するわけではありません。

ベストアンサー1

Bashを使用している場合は、コマンドを有効にしhistverifyてコマンドを呼び出して、!その後に履歴のコマンド番号を入力できます。

shopt -s histverify

もう一つの興味深いアプローチは、以下を使用することですfc

fc 200

履歴の200番目のコマンドがエディタにロードされます。その後、必要に応じてコマンドを編集でき、エディタを終了するとコマンドが実行されます。

他のシェル(Zshなど)にも同様の機能があります。

バラより歴史的相互作用に関するBashマニュアルの章もっと学ぶ。

おすすめ記事