LinMao's Blog
学习科研记录与分享!

history命令显示命令执行时间

history命令是linux上自带用于存储命令行历史记录的命令,将终端上 bash 执行过的所有命令存储到 .bash_history 文件中,来帮助我们复查用户之前执行过的命令。默认情况下是不现实时间的,如下:
 2002  ls
 2003  cd ..
 2004  cd 
 2005  sudo apt update
 2006   history 
运行 history 命令时,它会检查一个叫做 HISTTIMEFORMAT 的环境变量,这个环境变量指明了如何格式化输出 history 命令中记录的这个时间。 若该值为 null 或者根本没有设置,则它跟大多数系统默认显示的一样,不会显示日期和时间。 HISTTIMEFORMAT 使用 strftime 来格式化显示时间(strftime - 将日期和时间转换为字符串)。history 命令输出日期和时间能够帮你更容易地追踪问题。
  • %T: 替换为时间(%H:%M:%S)。
  • %F: 等同于 %Y-%m-%d (ISO 8601:2000 标准日期格式)。
  有三种不同的设置环境变量的方法:
  • 临时设置当前用户的环境变量
  • 永久设置当前/其他用户的环境变量
  • 永久设置所有用户的环境变量
  1. 运行下面命令为为当前用户临时设置 HISTTIMEFORMAT 变量。这会一直生效到下次重启。
     export HISTTIMEFORMAT='%F %T  '
     # 注意在最后的字符串上加上几个空格,不然可能可命令连在一起。。
    
  2. HISTTIMEFORMAT 变量加到 .bashrc.bash_profile 文件中,让它永久生效。
    echo 'HISTTIMEFORMAT="%F %T  "' >> ~/.bashrc
    source ~/.bashrc
    
  3. HISTTIMEFORMAT 变量加入 /etc/profile 文件中,让它对所有用户永久生效。
    echo 'HISTTIMEFORMAT="%F %T "' >> /etc/profile
    source /etc/profile
    
  注:添加HISTTIMEFORMAT环境变量之前的命令执行时间都是添加环境变量的时间   加上HISTTIMEFORMAT环境变量以后的输出为:
 2008  2019-09-17 16:46:21  ls
 2009  2019-09-17 16:46:22  cd ..
 2010  2019-09-17 16:46:24  cd 
 2011  2019-09-17 16:46:34  sudo apt update
 2012  2019-09-17 16:46:40  history 
 
Reference: 让 history 命令显示日期和时间
 
赞(2) 打赏
转载请注明出处:LinMao's Blog(林茂的博客) » history命令显示命令执行时间

评论 抢沙发

静态归档版本,评论功能已关闭。
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

LinMao's Blog(林茂的博客)

了解更多联系我们

觉得文章有用就打赏一下作者吧~

支付宝扫一扫打赏

支付宝

微信扫一扫打赏

微信