history 是一条非常实用的 shell 命令,可以显示出之前在 shell 中运行的命令,但是如果需要查什么时候什么人执行了什么命令似乎还是非常吃力,因为你即使查到了一条你认为不应该执行的命令,你也不能准确的说出这条命令是谁来执行的,更不能精确的指出这条命令就是事故发生的时候执行的,怎么办? shterm? 这个对于一般中小型公司来说似乎还是非常昂贵的,怎么办?
其实如果你不知道怎么办,那说明你还不了解 history. 设置很简单:
[dbadmin@JR-ZR01-TEST ~]$ history 1 ls 2 pwd 3 iptables-save 4 history 5 unset HISTTIMEFORMAT 6 history
设置方法: [root@MO-ZR01-WEB ~]# export HISTTIMEFORMAT="%F %T `whoami` " [root@MO-ZR01-WEB ~]# echo 'export HISTTIMEFORMAT="%F %T `whoami` "' >> /etc/profile
[dbadmin@JR-ZR01-TEST ~]$ history 1 2008-06-20 05:36:14 dbadmin ls 2 2008-06-20 05:36:16 dbadmin pwd 3 2008-06-20 05:36:19 dbadmin iptables-save 4 2008-06-20 05:36:23 dbadmin history 5 2008-06-20 05:36:31 dbadmin unset HISTTIMEFORMAT 6 2008-06-20 05:36:32 dbadmin history 7 2008-06-20 05:37:19 dbadmin export HISTTIMEFORMAT="%F %T `whoami` " 8 2008-06-20 05:37:20 dbadmin history
|
HISTTIMEFORMAT 的格式就是 strftime 函数的格式,比如上面的 "%F %T",%F 表示显示出 Y-M-D 格式的日期,%T 表示显示出 H-M-S 这样格式的时间。更多的格式,可以参考 man strftime
阅读(821) | 评论(0) | 转发(0) |