940
技術社區[雲棲]
為你在 Bash 曆史中執行過的每一項命令設置時間和日期
在默認情況下,所有通過 Bash 在命令行中執行過的命令都被存儲在曆史緩存區或者一個叫做~/.bash_history
的文件裏。這意味著係統管理員可以看到係統上用戶執行過的命令清單,或者用戶可以通過像 history 命令這樣的選項來看他或她自己的命令曆史。
$ history
Linux 曆史命令
從上麵 history 命令的輸出可知,命令被執行的日期和時間並沒有顯示出來。基本上所有的 Linux 發行版的默認設置都是這樣的。
在這篇文章裏,我們將解釋當在 Bash 中執行 history
命令顯示每個命令時,如何配置顯示時間戳信息。
每個命令相關的日期和時間可以記錄到曆史文件中,用 HISTTIMEFORMAT
環境變量的設置作為命令曆史的備注記錄。
這裏有兩種可行的方式來達到目的:一種是暫時的效果,一種是永久的效果。
要臨時設置 HISTTIMEFORMAT
環境變量,在命令行這樣輸出它:
$ export HISTTIMEFORMAT='%F %T'
在上麵的輸出命令當中,時間戳格式如下:
1、%F
-展開為完整日期,即 %Y-%m-%d
(年-月-日)。
2、%T
-展開為時間,即 %H:%M:%S
(時:分:秒)。
通讀 date 命令的 man 手冊來獲得更多使用說明:
$ man date
然後如下檢查你的命令曆史:
$ history
顯示帶有日期和時間的 Linux 命令曆史。
(LCTT 譯注:注意:這個功能隻能用在當 HISTTIMEFORMAT 這個環境變量被設置之後,之後的那些新執行的 bash 命令才會被打上正確的時間戳。在此之前的所有命令,都將會顯示成設置 HISTTIMEFORMAT 變量的時間。)
然而,如果你想永久地配置該變量,用你最喜歡的編輯器打開文件 ~/.bashrc
。
$ vi ~/.bashrc
然後在下方添加(用注釋將其標記為你自己的配置):
# 我的配置
export HISTTIMEFORMAT='%F %T'
保存文件並退出,然後,運行下麵的命令以便改動當即生效:
$ source ~/.bashrc
原文發布時間為:2017-01-23
本文來自雲棲社區合作夥伴“Linux中國”
最後更新:2017-05-27 10:02:16