linux history歷史命令介紹

現在大多數的Linux系統都使用bash作爲默認的shell吧,下面就介紹一下bash的history命令管理功能吧,history命令可以回顧,修改和重用之前使用過的歷史命令。

1.一些變量說明:

$HISTFILE bash啓動的時候會讀取~/.bash_history文件並載入到內存中,這個變量就用於設置.bash_history文件,bash退出時也會把內存中的歷史回寫到.bash_history文件

$HISTSIZE 設置bash會員期間歷史包含的命令數量

$HISTFILESIZE 設置歷史文件中實際存儲的命令數量

2.顯示歷史命令

history 顯示全部歷史

history 數字 顯示之前執行過的若干命令,例:history 2 顯示執行過的上兩條命令

使用上下箭頭鍵也可以查看上一條根下一條命令,

3.運行歷史命令

!! 運行上一條命令

!88 運行第88條命令

!88 /test 運行第88條命令並在命令後面加上/test

!?CF? 運行上一個包含CF字符串的命令

!ls 運行上一個ls命令

!ls:s/CF/l 運行上一個ls命令,其中把CF替換成l

fc 編輯並運行上一個歷史命令

fc 66 編輯並運行第66個歷史命令

fc -e /usr/bin/vim 66 使用vim編輯第66個命令並運行

4.搜索歷史命令

使用ctrl+r搜索歷史中的字符串,重複按ctrl+r可以在歷史命令列表中不斷的向前搜索包含字符串的命令,回車就會執行查找的命令

5.清空歷史命令

history -c

6.寫history

history -w 讓bash將歷史命令立即從內存寫到.bash_history文件

history -a 將目前新增的 history 歷史命令寫入.bash_history文件

7.history歷史命令記錄刪除

修改/etc/profile將HISTSIZE=1000改成0或1

清除用戶home路徑下.bash_history

8.history配置

運行 set | grep HISTFILE

顯示:HISTFILE=/root/.bash_history
HISTFILESIZE=1000

在.bash_profile文件中添加

HISTFILE=/root/history

export HISTFILE

重新登錄後歷史命令都會寫入到/root/history文件中

其餘的一些設置可以在.bashrc文件中設置

export HISTCONTROL=ignoredups #忽略重複的命令

export HISTIGNORE=”[ ]*:&:bg:fg:exit” #忽略由冒號分割的這些命令

export HISTFILESIZE=1000 #設置保存的歷史命令的文件大小

export HISTSIZE=100 #設置保存的歷史命令的條數

技巧:

shopt -s histappend 在shell中執行這個命令可以使shell保存歷史命令的時候使用追加的方式,因爲默認是覆蓋,在多終端的清空下,最後退出的終端灰覆蓋以前的歷史記錄

在history歷史記錄中顯示時間和執行命令的用戶 echo ‘export HISTTIMEFORMAT=”%F %T `whoami` “‘ >> /etc/profile

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