假设我使用 zsh 运行了一个命令
echo "mysecret" > file
我可以使用命令轻松打印历史记录,包括条目号fc -l
:
1 echo "mysecret" >| file
但是如何轻松地从历史记录中删除条目呢?
我找不到相应的段落男人 zshbuiltins.
*BSD/达尔文 (macOS):
LC_ALL=C sed -i '' '/porn/d' $HISTFILE
Linux(GNU sed):
LC_ALL=C sed -i '/porn/d' $HISTFILE
这将从 $HISTFILE 中删除所有与“porn”匹配的行。
With setopt HIST_IGNORE_SPACE
,您可以在上面的命令前面添加一个空格字符,以防止其被写入 $HISTFILE。
As 蒂姆在下面的评论中指出 https://stackoverflow.com/questions/7243983/how-to-remove-an-entry-from-the-history-in-zsh/13661794?noredirect=1#comment39805395_13661794,前缀 LC_ALL=C 可防止“非法字节序列”失败。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)