如何在Linux中的Bash歷史記錄中啟用時間戳

您可以使用以下命令輕鬆找到Linux中最近執行的命令列表 history 命令,對不對? 是。 但是您怎麼知道命令的執行時間呢? 當然,您可以搜索日誌文件。 但是,有一種更簡單的方法。 您只需在Linux中的Bash歷史記錄中啟用時間戳記,因此更容易查找何時在Linux中執行了特定命令。

在Linux中的Bash歷史記錄中啟用時間戳

重擊 維護在終端中輸入的命令的歷史記錄。 此命令列表保存在一個名為 .bash_history 在我們的HOME目錄中。 大多數Linux發行版都記得最後 1000 命令默認。 我們可以使用以下命令檢索最近執行的命令 history 命令灰如下所示:

$ history

樣本輸出:

無時間戳的history命令輸出

從上面的輸出中可以看到,即使history命令顯示了先前執行的命令列表,也沒有顯示這些命令何時執行。

要在Linux中的Bash歷史記錄中啟用時間戳,您需要設置 歷史記錄格式 環境變量。 此變量用於打印與每個顯示的歷史記錄條目關聯的時間戳。

運行以下命令來設置 歷史記錄格式 環境變量:

$ export HISTTIMEFORMAT='%F %T '

現在,運行 history 再次命令,您將在每個命令之前看到時間戳:

在Bash歷史記錄中啟用時間戳

完善! 現在,您可以輕鬆地查找在Linux系統中何時執行特定命令。

例如,如果要顯示最後“ N”個命令的時間戳 10,將 history 命令輸出到 tail 如下命令:

$ history | tail -10

為了使 歷史記錄格式 env變量在系統重新引導後持續存在,請編輯 ~/.bashrc 文件:

$ nano ~/.bashrc

在末尾添加以下行:

export HISTTIMEFORMAT='%F %T '

CTRL+O 保存文件,然後按 CTRL+X 退出。

運行以下命令以立即使更改生效:

$ source ~/.bashrc

這隻會顯示當前用戶的時間戳。 要為所有系統用戶啟用Bash歷史記錄時間戳,請編輯 /etc/profile 文件:

$ sudo nano /etc/profile

並添加以下行:

export HISTTIMEFORMAT='%F %T '

保存並關閉文件。 要使更改生效,請運行:

$ sudo source /etc/profile

有關更多詳細信息,請參見手冊頁:

$ man history

希望這可以幫助。

相關閱讀:

  • 如何在Linux中清除命令行歷史記錄
  • 如何顯示沒有行號的Bash歷史記錄
  • 如何避免Linux中Bash歷史記錄中的重複條目
  • 在Linux中查找命令或進程的執行時間

BASHBash歷史記錄Bash技巧歷史命令Linux Linux基礎Linux技巧時間戳

Sidebar