Linux history命令詳解

2022-07-03 20:21:11 字數 2513 閱讀 8372

history命令用於顯示指定數目的指令命令,讀取歷史命令檔案中的目錄到歷史命令緩衝區和將歷史命令緩衝區中的目錄寫入命令檔案。

該命令單獨使用時,僅顯示歷史命令,在命令列中,可以使用符號!執行指定序號的歷史命令。

歷史命令是被儲存在記憶體中的,當退出或者登入shell時,會自動儲存或讀取。在記憶體中,歷史命令僅能夠儲存1000條歷史命令,該數量是由環境變數histsize進行控制

-c:清空當前歷史命令;

-a:將歷史命令緩衝區中命令寫入歷史命令檔案【/root/.bash_history】;

-r:將歷史命令檔案中的命令讀入當前歷史命令緩衝區;

-w:將當前歷史命令緩衝區命令寫入歷史命令檔案中【/root/.bash_history】;

n:列印最近的n條歷史命令
#  history會列出bash儲存的所有歷史命令,並且給它們編了號,我們可以使用「嘆號接編號」的方式執行特定的歷史
!+字母:調出最近使用一次以此字母開頭的命令

!!: 表示最近使用的一次操作的命令

!+數字:表示調出歷史記錄的幾條命令

!-數字:調出最近的幾條命令

歷史命令顯示執行時間【預設只顯示序號和命令】

# 臨時生效
[root@localhost ~]# export histtimeformat='%f %t'

[root@localhost ~]# echo $histtimeformat

[root@localhost ~]# history 2

# 永久生效
[root@localhost ~]# vim /root/.bash_history
--->  新增 export histtimeformat='%f %t'
source /root/.bashrc    # 命令生效

檢視history的快取數量

# 直接檢視變數[root@localhost ~]# echo $histsize     

# 檢視檔案內容

[root@localhost ~]# cat /etc/profile | grep 'histsize'注意:histsize=0,表示禁用history

檢視最近10條命令
[root@localhost ~]# history 10

使用最近一次使用的命令

使用第num條命令

顯示最近使用的某個特定命令

獲得上一條命令的引數

更改歷史記錄資訊

echo $histsize

export $histsize=500

history -c   清除所有的歷史記錄

history -d 212  清除212行的命令資料

永久生效:

echo "export tmout = 300" >> /etc/profile

echo "export $histsize=500" >> /etc/profile

echo "export $histfilesize=500" >> /etc/profile   只有500歷史記錄

source /etc/profile  永久生效  (source == .)

注意: cat ~/.bash_history   (歷史記錄檔案的命令數量,屬於使用者的變數)

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...

linux history命令詳解

linux下history命令主要用於顯示歷史指令記錄內容,下達歷史紀錄中的指令 history命令語法 www.linuxidc.com linux history n www.linuxidc.com linux history c www.linuxidc.com linux history ...