Linux 歷史命令顯示執行時間

命令行歷史

history

登錄shell時,會讀取命令歷史文件中記錄下的命令:~/.bash_history

登錄進shell後新執行的命令只會記錄在緩存中;這些命令會用戶退出時“追加”至命令歷史文件中;

history:

​ -a: 追加本次會話新執行的命令歷史列表至歷史文件中;

 -d: 刪除歷史中指定的命令;

​ -c: 清空命令歷史;

快捷操作

!#: 調用歷史中第#條命令;

!string:調用歷史中最近一個以string開頭的命令;

!!: 上一條命令

讓history記錄顯示時間

效果:

[root@localhost ~]# history 5
  365  [2020-01-27 20:50:11]vim .bash_profile 
  366  [2020-01-27 20:50:50]vim /etc/profile
  367  [2020-01-27 20:51:34]source /etc/profile
  368  [2020-01-27 20:51:41]history 
  369  [2020-01-27 20:57:37]history 5

配置:

在全局配置文件/etc/profile或者用戶家目錄.bash_profile的文件末尾添加一行配置,並使配置生效

# vim  /etc/profile或.bash_profile

export HISTTIMEFORMAT="[%F %T]"
####################################
使配置立即生效
[root@localhost ~]# source   [/etc/profile|.bash_profile]

還可以顯示執行的用戶及其IP


# vim /etc/profile 
#在文件最後加上如下內容

USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`   #獲取用戶登錄IP
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi
export HISTTIMEFORMAT="[%F %T][`whoami`][${USER_IP}] "  #定義歷史命令顯示格式
####################################
[root@localhost ~]# source /etc/profile
查看歷史命令,已生效
[root@localhost ~]# history 5
  433  [2020-01-27 21:39:40][root][192.168.0.106]source /etc/profile
  434  [2020-01-27 21:39:42][root][192.168.0.106]history 5
  435  [2020-01-27 21:39:49][root][192.168.0.106]reboor
  436  [2020-01-27 21:39:51][root][192.168.0.106]reboot
  437  [2020-01-27 21:43:13][root][192.168.0.106]history 5

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章