Linux中的history命令很常用,无论是对管理员,普通用户还是黑客。对于普通用户来说可以用该命令查看之前都执行了什么命令,可以用CTRL+R来翻找太长的命令话,或者用!cmd命令,或者直接执行history命令来学习其他人执行了什么命令,都是写什么意思。对于黑客来说,history同样是非常有用的命令,比如说这么一条命令:
root:\> mysql –h198.168.0.1 –uroot –p1234
最重要的东西,数据库的密码就被黑客给破译了!所以对管理员来说,一项很重要的工作就是管理history命令了,对管理员来说,常用的几个命令如下:
用c选项清除所有的历史命令
root:\> history –c
用HISTSIZE禁用history
如果你想禁用history,又不让bashshell记录你的命令,像下面那样把HISTSIZE设为0即可。
root:\> export HISTSIZE=0
用HISTSIZE控制历史命令的总数
把下面的两行添加到.bash_profile然后重新登录bash(或者用source .bash_profile),值设置小一点!
root:\> vi ~/.bash_profile
HISTSIZE=100
HISTFLESIZE=100
其他比较有用的命令罗列如下:
root:\> export HISTCONTROL=ignoredups # 使用HISTCONTROL来消除命令历史中的连续重复条目
root:\> export HISTCONTROL=erasedups # 使用HISTCONTROL在整个历史中去除重复命令
root:\> export HISTCONTROL=ignorespace # 使用HISTCONTROL强制history忽略某条特定命令(这里是空格)
root:\> export HISTIGNORE=“pwd:ls:” # 存储历史命令时忽略特殊命令,这里的话pwd,ls就不会存储了
root:\> export HISTTIMEFORMAT='%F %T ' # 使用HISTTIMEFORMAT在历史中显示TIMESTAMP
root:\> history | more
1 2008-08-05 19:02:39 service network restart
2 2008-08-05 19:02:39 exit
3 2008-08-05 19:02:39 id
4 2008-08-05 19:02:39 cat /etc/redhat-release