首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何配置ZSH来用一个孤立的、空的历史来启动每个shell?

我如何配置ZSH来用一个孤立的、空的历史来启动每个shell?
EN

Unix & Linux用户
提问于 2020-06-01 05:39:49
回答 2查看 502关注 0票数 1

我用Zsh和噢,我的ZSH。我希望每一个新的ZSH外壳从一个空的历史开始。输入一个shell的命令不应该出现在另一个shell的历史记录中。我怎样才能做到这一点?

我尝试将以下内容添加到我的~/.zshrc中,但没有结果:

代码语言:javascript
复制
setopt no_share_history
unsetopt share_history
unsetopt inc_append_history
unsetopt append_history

我还试着遵循这个回答,使箭头键只显示本地历史,但这似乎没有效果。

目前,如果我打开一个新的shell,它将导入历史记录。我似乎不能删除历史;当我删除~/.zsh_history时,一旦打开一个新的shell,它就会与整个旧内容一起重新出现。inc_append_history确实阻止了立即编写历史记录,但是一旦外壳关闭,历史记录最终仍将被保存。

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2020-06-01 05:50:12

只有将HISTFILE变量(设置为历史文件的路径)和SAVEHIST变量(设置要存储的条目的数量)才会保存zsh历史记录。

因此,应该只从设置变量定义的地方删除这些变量定义(可能是您的~/.zshrc或其中包含的任何文件)。即使不设置其中的一个就足够了。

请注意,setopt no_share_historyunsetopt share_history (或set +o nonosharehistory等或options[sharehistory]=off)严格等效。

票数 2
EN

Unix & Linux用户

发布于 2020-06-01 05:57:05

将其添加到~/.zshrc文件中:

代码语言:javascript
复制
function erase_history { local HISTSIZE=0; }
erase_history

每次启动交互式zsh时,它都会删除历史记录。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/590187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档