Linux设置history命令显⽰⾏数以及时间
Linux和unix上都提供了history命令,可以查询以前执⾏的命令历史记录
但是,这个记录并不包含时间项⽬
因此只能看到命令,但是不知道什么时间执⾏的
如何让history记录时间呢?
解决⽅案
注意:本⽅法只对bash-3.0以上版本有效
执⾏rpm -q bash即可显⽰bash的版本
张绣简介对于常见的linux AS4、AS5,都是有效的
---------------------------------------------
编辑/etc/bashrc⽂件,加⼊如下三⾏:
走迷宫图片HISTFILESIZE=2000
HISTSIZE=2000
HISTTIMEFORMAT="%Y%m%d-%H%M%S: " 或者HISTTIMEFORMAT="%Y%m%d %T "或者HISTTIMEFORMAT="%F %T " export HISTTIMEFORMAT
或者⼀句话:
echo -e 'export HISTFILESIZE=99999\nexport HISTSIZE=99999\nexport HISTTIMEFORMAT="%F %T "' >> /etc/bashrc
echo "HISTFILESIZE=99999" >> /etc/bashrc && echo "HISTSIZE=99999" >> /etc/bashrc && echo 'HISTTIMEFORMAT="%F %T "'>> /etc/bashrc && export HISTTIMEFORMAT
保存后退出,关闭当前shell,并重新登录
这个时候,在~/.bash_history⽂件中,就有记录命令执⾏的时间了
⽤cat命令显⽰这个⽂件,但是却会看到这个时间不是年⽉⽇显⽰的
教育学研究⽽是按照unix time来显⽰:
[root@vz ~]# cat ~/.bash_history
#1184649982
touch 3
#1184649984
exit
#1184650148
history
[root@vz ~]#
这个时间叫做unix time,是从1970年1⽉1⽇临时起,到现在⼀共经过了多少秒
因为1969年是unix系统诞⽣,因此1970年1⽉1⽇被规定为unix系统诞⽣的时间的初始
linux系统因为和unix系统的相似性,也完全采⽤这种⽅式来记录时间twenty怎么读
为了按照⼈类的年⽉⽇⽅式来显⽰时间,执⾏history命令来查看,就可以了,例如:
[root@vz ~]# history | more
1 20070717-132935: ll
2 20070717-132935: w
3 20070717-132935: rm -rf *
4 20070717-132935: ll
5 20070717-132935: w
6 20070717-132935: cat /etc/redhat-relea
7 20070717-132935: rpm -ivh expect-5.42.1-1.i386.rpm
图书销售
8 20070717-132935: ll
西乐葆的功效与作用
9 20070717-132935: vi /etc/sysconfig/i18n
10 20070717-132935: ll
11 20070717-132935: rpm -q expect
[root@vz ~]#
浙江及周边旅游推荐自驾游
这样即可查看到在什么时间执⾏了什么命令。
注意:本⽅法必须在服务器刚刚新安装好时候,就设置这个参数。
山回路转不见君的下一句如果是已经运⾏了很久的服务器才添加这个参数,则以前的那些命令历史记录是不显⽰时间的。