Oh My ZshでZSHを使用します。私はすべての新しいZSHシェルが空の履歴から始まることを望みます。あるシェルに入力されたコマンドは、他のシェルの履歴には表示されません。この目標をどのように達成できますか?
私は以下を私のファイルに追加しようとしましたが、~/.zshrc
役に立ちませんでした。
setopt no_share_history
unsetopt share_history
unsetopt inc_append_history
unsetopt append_history
私もこれに従ってください。回答矢印キーを使用すると、地域の履歴のみが表示されるようにしましたが、効果がないようです。
現在新しいシェルを開くと、履歴が取得されます。履歴を削除できないようです。履歴を削除すると、新しい~/.zsh_history
シェルを開くとすぐに、以前のコンテンツ全体が再表示されます。inc_append_history
これにより履歴をすぐに書き込むことはできませんが、シェルが閉じたときに記録が保存されます。
答え1
ファイルに以下を追加します~/.zshrc
。
function erase_history { local HISTSIZE=0; }
erase_history
インタラクティブzshシェルを起動するたびに履歴が削除されます。
答え2
HISTFILE
SAVEHIST
zsh履歴は、変数(記録ファイルへのパス)と変数(保存する項目数)を設定した場合にのみ保存されます。
~/.zshrc
したがって、設定された場所(あなたのものでも含まれているファイルでもよい)からこれらの変数定義を削除するだけです。そのうちの1つだけを設定しても十分です。
setopt no_share_history
and unsetopt share_history
(またはset +o nonosharehistory
, etc. or ) はoptions[sharehistory]=off
まったく同じです。