众所周知,'history'命令显示Linux服务器的命令行历史记录,'history -c'是清除/删除此命令行历史记录的命令.
我必须通过我的bash脚本触发此命令.脚本如下,
#! /bin/bash
var=`history -c`
if [ $? -eq 0 ]
then
echo "cleared"
echo $var
fi
Run Code Online (Sandbox Code Playgroud)
输出如下:
cleared
Run Code Online (Sandbox Code Playgroud)
虽然它的打印"清除"为输出,但history-c不会删除历史记录.
如果你可以指导/建议如何实现这一点,那将是很好的,即在我的bahs脚本中使用"history-c"命令来删除命令行历史记录.或者还有其他方法可以删除命令行历史记录我的bash脚本.
谢谢和问候,Navya
history -c清除当前 shell 的历史记录,并且不删除 ~/.bash_history。
但是,当您运行脚本时,当前 shell 会创建一个新 shell 来运行该脚本,并在脚本完成后退出该 shell。
相反,要在当前 shell 中执行脚本,您必须获取该脚本。如果脚本的名称是 foo.sh,请尝试运行. ./foo.sh
但无论哪种情况,您编写的脚本都不会执行该命令。将其修改为如下所示:
#! /bin/bash
history -c
if [ $? -eq 0 ]
then
echo "cleared"
fi
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1227 次 |
| 最近记录: |