众所周知,“history”命令显示Linux服务器的命令行历史记录,“history -c”是清除/删除此命令行历史记录的命令。
我必须通过 bash 脚本触发此命令。脚本如下,
#! /bin/bash
var=`history -c`
if [ $? -eq 0 ]
then
echo "cleared"
echo $var
fi
输出如下:
cleared
尽管它的打印作为输出被“清除”,但history-c并没有删除历史记录。
如果您可以指导/建议我如何实现这一目标,即在我的 bahs 脚本中使用“history-c”命令来删除命令行历史记录,那就太好了。或者有没有其他方法可以通过删除命令行历史记录我的 bash 脚本。
感谢和问候,
纳亚
history -c
清除当前 shell 的历史记录,并且不删除 ~/.bash_history。
但是,当您运行脚本时,当前 shell 会创建一个新 shell 来运行该脚本,并在脚本完成后退出该 shell。
相反,要在当前 shell 中执行脚本,您必须获取脚本。如果脚本的名称是 foo.sh,请尝试运行. ./foo.sh
但无论哪种情况,您编写的脚本都不会执行该命令。将其修改为如下所示:
#! /bin/bash
history -c
if [ $? -eq 0 ]
then
echo "cleared"
fi
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)