シェル履歴の固定項目

シェル履歴の固定項目

シェル履歴に特定のコマンドを「固定」する方法はありますか?

残りの履歴と同様に、Ctrl + Rを使用して検索できるお気に入りのコマンドを保存したいのですが、期限切れにしてはいけません。

ベストアンサー1

簡単なアプローチは、シェルのスタートアップファイルにコードを入れて追加の履歴ファイルを読み込み、粘着性のある行を忘れないように十分な履歴行をメモリに保存することです。

強く打つ

存在する~/.bashrc

history -r ~/.bash_history.sticky

HISTSIZEまた、少なくともHISTFILESIZE行数~/.bash_history.stickyと長いセッションで実行されるコマンドの数を追加する必要があります。

HISTFILESIZE=1000
HISTSIZE=10000

固定記録項目がメモリーに保持され、値が大きすぎないようにするには、HISTSIZE記録を手動でクリーンアップして実行できますPROMPT_COMMANDhistory -derasedupsHISTCONTROL

扱いにくい

存在する~/.zshrc

fc -RI ~/.zsh_history.sticky

HISTSIZEまた、少なくともSAVEHIST行数~/.zsh_history.stickyと長いセッションで実行されるコマンドの数を追加する必要があります。

SAVEHIST=1000
HISTSIZE=10000

大きな問題なしに固定履歴エントリをメモリに保存するには、一時ファイルに書き込んで編集したバージョンを再読み込みする必要があるため、手動で履歴をトリミングすることでこれを行うHISTSIZEことができます。またはオプションを設定します。precmdfc -Whist_ignore_dupshist_ignore_all_dups

おすすめ記事