今天分享一个生产环境避免背锅的小技巧:设置历史命令执行的具体时间。可以快速定位问题出现的时间点并恢复误操作导致的系统问题,用于追踪溯源。
在Linux系统中,默认情况下,history命令只会显示命令的编号和命令内容,并不会显示执行的日期。历史命令的显示时间是由HISTTIMEFORMAT环境变量控制的。要显示历史命令的时间戳,你需要将此变量设置为你希望时间戳的格式。
临时生效:
[root@localhost ~]# export HISTTIMEFORMAT="%d/%m/%y %T "
查看到可以显示具体时间了,但是这种方式重启会失效,仅在当前会话有效
[root@localhost ~]# history
1 03/10/24 10:48:01 lsblk
2 03/10/24 10:48:01 echo $LANG
永久生效(重启后自动加载):
[root@localhost ~]# cat >> /etc/profile << EOF
export HISTTIMEFORMAT="%d/%m/%y %T "
EOF
[root@localhost ~]# source /etc/profile
[root@localhost ~]# history
1 03/10/24 10:48:01 lsblk
2 03/10/24 10:48:01 echo $LANG
格式字符串%d/%m/%y %T将按日期、月份、年份的简写格式显示时间戳,然后是小时、分钟和秒。可以根据自己喜好进行自定义
查看变量
[root@localhost ~]# echo $HISTTIMEFORMAT
%d/%m/%y %T
需要注意的是:之前的历史命令的时间会显示设置时的时间,并不能追溯以前执行过的命令的具体时间,所以生产环境中建议在部署时就设置历史命令时间戳。
本篇关于设置历史命令时间的知识分享完结!感谢你的阅读,如果有错误之处,敬请指出;如果觉得还OK,欢迎点赞 ;关注 ; 收藏 ; 私信;一起成长!!