在使用Red Hat Enterprise Linux时,是否可以设置全局选项,使得每当用户退出SSH连接时,该用户的BASH历史记录被清除?
/etc/bash.bash_logout
脚本中,您可以放置以下内容:unset HISTFILE
HISTFILE
的默认值是 ~/.bash_history
。用户可以将其设置为任何他们想要的值。如果没有设置,注销过程不会将 RAM 中的历史信息写入历史文件。
bash
没有全局注销文件,尽管似乎可以在编译时启用它。我不知道它是否在可用的 ~/.bash_logout
之前或之后执行。 - chepner/etc/bash.bash_logout
在我的系统上是可用的。我没有自己编译系统。 - lurkerhistory
命令运行到任意文件中,然后在登录后将其复制回来。 - lurker~/.bash_logout
文件中:echo > $HISTFILE
~/.bash_login
文件中:HISTFILE=~/my_secret_history_file
/dev/null
或其他什么东西? - user2656114我知道你可以手动运行
history -c
我认为你可以将这个放入你的~/.bash_logout
文件中。
当需要清空历史记录时 - 我会将它们链接到 /dev/null...
lrwxrwxrwx 1 root root 9 Dez 16 19:10 .ash_history -> /dev/null
lrwxrwxrwx 1 root root 9 Dez 16 19:10 .bash_history -> /dev/null
...然后,键入的命令历史记录仅适用于当前会话。
启动新的 shell,启动新的空临时历史记录。
将它们链接到普通用户的 /dev/null
必须由 root
完成。
bash
会话以将历史记录保存在任意文件中,那么你所能做的就不多了。 - chepner/etc/bash.bash_logout
设置为退出文件。 - lurker