Shopt histreeditの機能は何ですか?

Shopt histreeditの機能は何ですか?

shopt histreeditユーザーは失敗した履歴の置き換えを再編集できる必要があります。

歴史的交換がどのように失敗するのでしょうか。

とどうhistreedit違うのhistverify

ベストアンサー1

歴史的交換がどのように失敗するのでしょうか。

最後のコマンドを再実行したいのですが、ls履歴置換項目を誤って入力したとします!lss。で始まるコマンドがないと仮定するとlss

  • 標準オプションを使用すると、

    $ !lss
    bash: !lss: event not found
    $
    
  • を使用すると、shopt -s histreeditプロンプトがリセットされ、問題をより簡単に解決できます。

    $ !lss
    bash: !lss: event not found
    $ !lss
    

とどうhistreedit違うのhistverify

histverify代わりに、履歴置換を含むコマンドを実行しようとせずに結果として表示されるコマンドのプロンプトを設定します。

$ ls -a
.dotfile file1  file2  file3  ...
$ !ls
.dotfile file1  file2  file3  ...
$ shopt -s histverify
$ !ls
$ ls -a

これは本質的に確認ステップであり、便利です。たとえば、試みると、echo "hi!!"Bashは最後に実行されたコマンドをオーバーライドし!!(二重引用符は履歴拡張を無効にしません)、結果を自動的に実行します。明らかに、これにより他のコマンドが破損する可能性があります。を使用すると、histverify予期せず履歴拡張が発生した場合に停止し、修正できます。

おすすめ記事