分享一条history命令小技巧
2024年01月13日
100
在使用linux终端执行bash的时候,发现怎么没有时间标识呢,这以后还怎么查是哪天执行了那条命令呢。这个history的作用就是将bash执行过的所有命令存储到.bash_history文件中,帮助复查用户命令。

在使用linux终端执行bash的时候,发现怎么没有时间标识呢,这以后还怎么查是哪天执行了那条命令呢。这个history的作用就是将bash执行过的所有命令存储到.bash_history文件中,帮助复查用户命令。默认情况使用history确实是不会输出命令执行的时间和日期,尽管这个命令记录得到时间。运行history命令的时候,会检查一个HISTIMEFORMAT的环境变量,这个变量制定了怎么去格式化输出这个命令中存储的时间,如果这个值为null,那就是默认不显示。现在使用strftime格式化时间,有三种方式:

(1)临时设置HISTIMEFORMAT变量,在下次机器重启前生效

# export HISTIMEFROMAT=‘%F %T’

(2)将变量添加到.bashrc或者.bash_profile文件中,永久生效

# echo echo'HISTTIMEFORMAT="%F %T "'>>~/.bashrc 或者~/.bash_profile并刷新生效 source ~/.bashrc文件或者./bash_profile

(3)将HISTIMEFORMAT变量添加到/etc/profile文件中,永久对所有用户生效

echo'HISTTIMEFORMAT="%F %T "'>>~/.bashrc然后生效source /etc/profile

注意:配置完,就发现怎么时间都一样,这是因为显示的是你头一次设置完参数的时间,这个变量只对设置后的时间有效,以前的就算一样的时间了!

我们大家在玩Linux时经常会用到history这个命令,这个命令默认可以保存的命令数是1000,1000对于我们Linux玩家来说实在是太少了,那么我们如何调整history的保存条数呢?

(1)查找profile文件

history命令最大记录数的设置还在profile文件中。使用命令cd /etc进入etc文件

(2)vi profile

在profile文件中找到配置项HISTSIZE,默认值为1000,按下i进行编辑,编辑为10000甚至更多,按下:wq,保存退出,history的条数设置就完成了。