Chinaunix首页 | 论坛 | 博客
  • 博客访问: 214747
  • 博文数量: 39
  • 博客积分: 1949
  • 博客等级: 上尉
  • 技术积分: 347
  • 用 户 组: 普通用户
  • 注册时间: 2010-09-24 16:24
文章分类

全部博文(39)

文章存档

2013年(1)

2012年(12)

2011年(24)

2010年(2)

分类:

2011-07-24 09:24:24

histroy可以记录曾经执行的命令,将文件保存至~/.bash_histroy,默认保存1000条记录,并且当终端退出时才将内存中的histroy保存至该文件中.

我们可以通过编辑/etc/profile,将HISTSIZE=1000这一行修改成你需要的保存历史命令的记录条数。

如果你不需要保存记录,你可以在/etc/skel/.bash_logout文件添加删除的命令,这样每次用户logout的时候就可以清除命令历史记录了。

问题

  和上都提供了命令,可以查询以前执行的命令历史记录

  但是,这个记录并不包含时间项目

  因此只能看到命令,但是不知道什么时间执行的

  如何让记录时间呢?

  解决方案

  注意:本方法只对bash-3.0以上版本有效

  执行rpm -q bash即可显示bash的版本

  对于常见的 AS4、AS5,都是有效的

  编辑/etc/bashrc文件,加入如下三行:

  HISTFILESIZE=2000

  HISTSIZE=2000

  HISTTIMEFORMAT="%Y%m%d-%H%M%S: "

  export HISTTIMEFORMAT

  保存后退出,关闭当前shell,并重新登录

  这个时候,在~/.bash_文件中,就有记录命令执行的时间了

  用cat命令显示这个文件,但是却会看到这个时间不是年月日显示的

  而是按照 time来显示:

  [root@vz ~]# cat ~/.bash_

  #1184649982

  touch 3

  #1184649984

  exit

  #1184650148

  

  [root@vz ~]#

  这个时间叫做 time,是从1970年1月1日临时起,到现在一共经过了多少秒

  因为1969年是系统诞生,因此1970年1月1日被规定为系统诞生的时间的初始

  系统因为和系统的相似性,也完全采用这种方式来记录时间

  为了按照人类的年月日方式来显示时间,执行命令来查看,就可以了,例如:

  [root@vz ~]# | more

  1 20070717-132935: ll

  [root@vz ~]#

  这样即可查看到在什么时间执行了什么命令。

  注意:本方法必须在刚刚新安装好时候,就设置这个参数。

  如果是已经运行了很久的才添加这个参数,则以前的那些命令历史记录是不显示时间的。

阅读(5662) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~