zshでHistory_ignoreを元に戻す方法はありますか?

zshでHistory_ignoreを元に戻す方法はありますか?

HISTORY_IGNOREパラメータを反転または反転しようとしています。特に、特定のアイテムを除外することを選択するのではなく、履歴ファイルに特定のアイテムのみを含めるようにしてください。

たとえば、「recordthis」というプレフィックスが付いたコマンドのみを含む場合、それが私が望むものです。

HISTORY_INCLUDEのようなものを使用する方法があるかどうかはわかりません。私が知っている限り、この方法は存在しません。また、これを行う方法があるかどうかわかりませんHISTORY_IGNORE="(*|!recordthis *)"。試してみましたが、目的の結果が得られなかったようです。

答え1

HISTORY_IGNOREzshはワイルドカードパターンとして解釈されるので、そのオプションを設定する限りextendedglob定義できます。

HISTORY_IGNORE='^recordthis*'

zshで始まらないrecordthis項目を保存したくない場合は$HISTFILE

^否定的なグローバル演算子です。また見てください~ とは別に(またはまさか)演算子(必須extendedglob):

HISTORY_IGNORE='*~recordthis*'

(無視する何もない*))で始まる文字列は除外されますrecordthis

関連情報