Amr*_*ana 53
你正在查找错误的文件.看看~/.zsh_history不是〜/ .zhistory要查看您的历史记录保存在哪个文件中
echo $HISTFILE
Run Code Online (Sandbox Code Playgroud)
和
rm $HISTFILE
Run Code Online (Sandbox Code Playgroud)
Don*_*rek 23
在unix系统上清除zsh历史记录.
echo "" > ~/.zsh_history & exec $SHELL -l
Run Code Online (Sandbox Code Playgroud)
Web*_*pic 13
nano .zsh_historyarrow keys导航到您要删除的历史记录部分.delete密钥删除所有不需要的历史记录日志.control X至Exit.Save更改.如果您对更改感到满意,请点击shift Y.control T保存to File..zsh_profile的arrow keys,然后按Enter键.history以确认删除.您可以使用这些命令打开 ZSH 命令的历史记录(当您位于 home 或 ~ 目录中时)并假设您知道如何使用vim或nano:
nano ~/.zsh_history
vim ~/.zsh_history
open ~/.zsh_history
Run Code Online (Sandbox Code Playgroud)
然后您可以手动删除所需的行并保存文件。
如果您的 zsh_history 列表太长,为了方便起见,请使用以下命令:
Vim通过将其添加到以下内容来启用环境中的鼠标移动和行编号.vimrc:.vimrc:Run Code Online (Sandbox Code Playgroud)vim ~/.vimrc
.vimrc并保存(按 ESC,输入“:”,写入 wq,然后按 Enter):Run Code Online (Sandbox Code Playgroud):set number set mouse=a
zsh_history使用鼠标轻松滚动Vim。Vim使用中启用复制,请按住键盘上的 Shift 键。此功能将从 Zsh 历史记录中删除您想要的任何一行,不问任何问题:
# Accepts one history line number as argument.
# Alternatively, you can do `dc -1` to remove the last line.
dc () {
# Prevent the specified history line from being saved.
local HISTORY_IGNORE="${(b)$(fc -ln $1 $1)}"
# Write out history to file, excluding lines that match `$HISTORY_IGNORE`.
fc -W
# Dispose of the current history and read the new history from file.
fc -p $HISTFILE $HISTSIZE $SAVEHIST
# TA-DA!
print -r "Deleted '$HISTORY_IGNORE' from history."
}
Run Code Online (Sandbox Code Playgroud)
如果您还想阻止所有dc命令写入历史记录,请在~/.zshrc文件中添加以下内容:
zshaddhistory() {
[[ $1 != 'dc '* ]]
}
Run Code Online (Sandbox Code Playgroud)
或者,要获得全面的、开箱即用的解决方案,请使用我的Zsh Hist 插件。
小智 5
~/.zshrc 添加以下行
alias clear_history='echo "" > ~/.zsh_history & exec $SHELL -l'
Run Code Online (Sandbox Code Playgroud)保存并关闭文件
zshclear_history前面所有的答案都是好的,这只是为我工作的解决方案。
TL; DR
cat /dev/null > ~/.zsh_history
| 归档时间: |
|
| 查看次数: |
34052 次 |
| 最近记录: |