正常在Linux系统上执行History只能输出曾经输入过的历史命令,如下:
[root@k8smaster ~]# history|head
1 ip a
2 scp root@192.168.137.11:/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/
3 yum clean all
4 yum makecache
5 sz
6 yum install lrzsz -y
7 rz
8 ll
9 rpm -ivh prometheus-2.20.0-1.el7.x86_64.rpm
10 systemctl status prometheus
但当系统可能因为命令引起故障时,查看历史命令就需要带时间
解决方法:
[root@k8snode ~]# export HISTTIMEFORMAT="%F %T `whoami` "
[root@k8snode ~]# history |tail
157 2023-02-20 06:50:50 root docker ps
158 2023-02-20 06:50:50 root docker ps -a
159 2023-02-20 06:50:50 root kubectl get services
160 2023-02-20 06:50:50 root docker ps -a
161 2023-02-20 06:50:50 root docker ps -a |grep nginx
162 2023-02-20 06:50:50 root docker search tomcat
163 2023-02-20 06:50:50 root docker images
164 2023-02-20 08:29:16 root ll /dev/urandom
165 2023-02-20 08:32:17 root export HISTTIMEFORMAT="%F %T `whoami` "
166 2023-02-20 08:32:24 root history |tail
此方法为临时,重启后失效,可将环境变量写入profile文件永久生效
[root@k8snode ~]# vim /etc/profile
export HISTTIMEFORMAT="%F %T `whoami` "