Linux history顯示時間戳

2021-07-26 02:54:23 字數 1369 閱讀 1450

在管理伺服器中為了提高history命令的效率,可以history命令加上一些引數,比如時間、使用者和ip等等引數。

(1)加上時間和使用者

export histtimeformat="%f %t `whoami` "

(2)再加上ip

user_ip=`who -u am i 2>/dev/null| awk ''|sed -e 's/[()]//g'`

export histtimeformat="[%f %t][`whoami`][$] "

(3)為了持久儲存需要寫進配置

source /etc/profile
第一步效果:

0x0bunix-2:~ kill3r$ history 

5 2017-01-14 20:56:39 kill3r ls

6 2017-01-14 20:56:51 kill3r pwd

7 2017-01-14 20:56:56 kill3r whoami

8 2017-01-14 20:56:58 kill3r id

9 2017-01-14 20:57:05 kill3r history

第二步效果:

0x0bunix-2:~ kill3r$ history 

5 [2017-01-14 21:41:50][kill3r][833] ls

6 [2017-01-14 21:41:53][kill3r][833] pwd

7 [2017-01-14 21:41:58][kill3r][833] whoami

8 [2017-01-14 21:42:01][kill3r][833] id

9 [2017-01-14 21:42:14][kill3r][833] history

原理:

0x0bunix-2:~ kill3r$ who -u am i

kill3r ttys000 jan 14 20:55 . 833

0x0bunix-2:~ kill3r$ who -u am i 2>/dev/null| awk ''

833

nf其實是number of field, 即整行域的總數,print就是列印最後乙個域

nr是指awk正在處理的記錄位於檔案中的位置(行號)

nf是指awk正在處理的記錄包含幾個域(字段),這於域分隔符有關,預設為空

%f    完整日期格式,等價於 %y-%m-%d

%t    時間,等於%h:%m:%s

linux history顯示歷史資訊

history 選項 引數 顯示歷史資訊 選項說明 選項說明 n顯示歷史記錄中最近的n個記錄 c清空當前歷史命令 a將歷史命令緩衝區中命令寫入歷史命令檔案中 r將歷史命令檔案中的命令讀入當前歷史命令緩衝區 w將當前歷史命令緩衝區命令寫入歷史命令檔案中 d刪除歷史記錄中第offset個命令 n讀取指定...

linux history 命令詳解

linux shell 具有history 功能,即會記錄已經執行過的命令,但是預設是不顯示命令的執行時間,命令的執行時間,history 已經記錄,只是沒有顯示。現在我們看看如何將執行時間顯示出來。很簡單 在 home user bashrc中新增 histtimeformat環境變數即可。具體如...

linux history命令學習

要想檢視使用者之前在shell下執行過哪些命令,可以通過 history 或者cat bash history 來得到。與history命令相關的環境變數是histsize,echo histsize 與 bash history相關的環境變數是histfilesize,echo histfiles...