让linux history命令显示命令的执行时间、在哪个机器执行的这个命令


1.在/etc/profile的最后添加如下部分:

USER_IP=`who -u am i 2>/dev/null| awk ‘{print $NF}‘|sed -e ‘s/[()]//g‘`  
export HISTTIMEFORMAT="[%F %T][`whoami`][${USER_IP}] " 

2. source /etc/profile

3.随便执行一下什么命令,

4.执行history,看效果:
  311  [2013-08-28 14:39:20][root][192.168.80.1] history
  312  [2013-08-28 14:39:43][root][192.168.80.1] df -h
  313  [2013-08-28 14:39:45][root][192.168.80.1] df -g
  314  [2013-08-28 14:39:47][root][192.168.80.1] history
  315  [2013-08-28 14:40:01][root][192.168.80.1] ifconfig
  316  [2013-08-28 14:44:53][root][192.168.80.1] init 6
  317  [2013-08-28 14:46:56][root][192.168.80.1] sdfsdfsd
  318  [2013-08-28 14:46:58][root][192.168.80.1] ls
  319  [2013-08-28 14:47:02][root][192.168.80.1] hostory
  320  [2013-08-28 14:47:04][root][192.168.80.1] history
  321  [2013-08-28 14:48:35][root][192.168.80.1] cat /etc/profile
  322  [2013-08-28 14:54:32][root][192.168.80.1] history

注意:1和2必须先执行完之后,才能看到history的效果。若是想看1个月前的history,而那时还没有执行1和2,这种情况下是看不到想要的效果的。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。