码迷,mamicode.com
首页 > 系统相关 > 详细

linux--history命令

时间:2019-06-25 09:49:07      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:font   文件中   and   span   %s   val   用户   命令   日期   

|--linux--history命令
  用于显示历史记录和执行过的指令命令
  history命令:是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。
  在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量 HISTSIZE进行控制。
  默认是不显示命令的执行时间,命令的执行时间,history 已经记录,只是没有显示。
  在家目录的.bash_history文件记录用户所使用的命令和历史信息

  语法:
    history(选项)(参数)
  选项:
    -N: 显示历史记录中最近的N个记录;
    -c:清空当前历史命令;
    -a:将历史命令缓冲区中命令写入历史命令文件中;
    -r:将历史命令文件中的命令读入当前历史命令缓冲区;
    -w:将当前历史命令缓冲区命令写入历史命令文件中;
    -d<offset>:删除历史记录中第offset个命令
    -n<filename>:读取指定文件
  参数:
    n:打印最近的n条历史命令。

|--使用!执行指定序号的历史命令。
!number 执行第几条命令
!command 从最近的命令查到以command开头的命令执行
!! 执行上一条

|--定制history功能

  语法格式:NAME=‘VALUE‘

    HISTSIZE:history记录的行数

    HISTFILE:history记录文件目录

    HISTFILESIZE:history记录文件目录行数
  变量写入/etc/profile或/etc/profile.d下的文件中
  或者写入到家目录的.proflie文件中
eg:
  查看history记录的行数
    echo $HISTSIZE
  修改history记录的配置
    HISTSIZE=1000
    export HISTSIZE
    或者
    export HISTSIZE=1000

显示执行历史记录时间
  1、默认情况下,history并不记录命令的执行时间,分析起来很困难。
    我们可以使用HISTTIMEFORMAT在历史中显示TIMESTAMP(时间戳)。
  2、把上面的 export HISTTIMEFORMAT="%F %T " 命令加入到~/.bashrc中
    即可在登录后自动开启history时间戳。添加完成后,
    执行source .bashrc 让其生效。仅针对当前账号有效。
  3、其实HISTTIMEFORMAT的格式就是 strftime函数的格式,比如上面的"%F %T ",
    %F表示显示出Y-M-D格式的日期,%T表示显示出H-M-S这样格式的时间。

eg:
 编辑/etc/profile或在/etc/profile.d下新建*.sh文件。

    vim /etc/profile.d/shit.sh输入下面两行
       HISTTIMEFORMAT="%Y%m%d-%H%M%S "
      或者 HISTTIMEFORMAT="%Y%m%d %T "
      或者 HISTTIMEFORMAT="%F %T "

         export HISTTIMEFORMAT
      或者一行搞定
        export HISTTIMEFORMAT="%y-%m-%d %H:%M:%S "

linux--history命令

标签:font   文件中   and   span   %s   val   用户   命令   日期   

原文地址:https://www.cnblogs.com/xuzhaoping/p/11080613.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!