无法在OS X El Capitan中清除Bash终端历史记录

时间:2015-10-30 19:23:04

标签: macos bash terminal osx-elcapitan

升级到OS X El Capitan后(至少我在更新后注意到),在bash中,history -c命令无法正常工作。

历史记录清算仅适用于当前标签。打开另一个选项卡后,可以访问历史记录。

我知道可能会删除.bash_history文件,但实际上我对这种新行为感到好奇吗?

可能与新的.bash_sessions功能有关。有没有像往常一样使用history -c的方法(在每个bash实例中清除历史记录)?

感谢。

3 个答案:

答案 0 :(得分:15)

HISTFILE不是〜/ .bash_history

在OS X上,shell变量 HISTFILE 似乎没有指向〜/ .bash_history。相反,它指向某种临时文件,如:

  

/Users/$LOGNAME/.bash_sessions/7F058D96-4161-4F7C-B9F7-CFFEB43C35B2.historynew

因此,history -c; history -w; rm ~/.bash_history 清除当前历史记录缓冲区,但实际上并未清除磁盘上的历史记录文件。我不清楚如何/何时将 HISTFILE 写入〜/ .bash_history,因此您可能需要手动清除该文件。例如:

background-image: url(http://dev.manager/for/wines/show_2010-meritage-hawk\'s-flight-reserve-750mL.jpg); 

答案 1 :(得分:3)

我用过:

cat /dev/null > ~/.bash_history && history -c

我使用了this主题,也许你可以在那里找到更多信息?

答案 2 :(得分:0)

简而言之::您在终端中的bash历史记录位于~/.bash_history中,或者如果您在~/.zsh_history中使用oh-my-zsh。只需打开文件并删除所需的特定命令行即可。我正在使用vim,但是您可以使用任何IDE或记事本将其打开并保存更改。