命令行歷史是一個頗有用工具,它能夠使咱們更快的執行命令
bash
重複前一個命令,有4種方法:
ide
重複前一個命令使用上方向鍵,並回車執行工具
按 !! 並回車執行spa
輸入 !-1 並回車執行命令行
按 Ctrl+p 並回車執行orm
!字符串:重複前一個以「字符串」開頭的命令 字符串
!num:按照history命令輸出中的序號重複對應命令 cmd
!?字符串:重複前一個包含abc的命令 string
!-n :重複n個命令以前的那個命令it
使用up(向上)和down(向下)鍵來上下瀏覽從前輸入 的命令
鍵入ctrl-r來在命令歷史中搜索命令
要從新調用前一個命令中最後一個參數:
!$ 表示
Esc, .(點擊Esc鍵後鬆開,而後點擊 . 鍵)
Alt+ .(按住Alt鍵的同時點擊 . 鍵)
調用歷史參數:
#cmd !^ : 利用上一個命令的第一個參數作cmd的參數
#cmd !$ : 利用上一個命令的最後一個參數作cmd的參數
#cmd !* : 利用上一個命令的所有參數作cmd的參數
#cmd !:n : 利用上一個命令的第n個參數作cmd的參數
!n:^ 調用第n條命令的第一個參數
!n:$ 調用第n條命令的最後一個參數
!m:n 調用第m條命令的第n個參數
!n:* 調用第n條命令的全部參數
!string:^ 從命令歷史中搜索以 string 開頭的命令,並獲取 它的第一個參數
!string:$ 從命令歷史中搜索以 string 開頭的命令, 並獲取它 的最後一個參數
!string:n 從命令歷史中搜索以 string 開頭的命令,並獲取 它的第n個參數
!string:* 從命令歷史中搜索以 string 開頭的命令,並獲取 它的全部參數
history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg [arg...]
Options:
-c: 清空命令歷史
-d: 刪除歷史中指定的命令
#: 顯示最近的#條歷史
-a: 追加本次會話新執行的命令歷史列表至歷史文件
-n: 讀歷史文件中未讀過的行到歷史列表
-r: 讀歷史文件附加到歷史列表
-w: 保存歷史列表到指定的歷史文件
-p: 展開歷史參數成多個行,但不存在歷史列表中
-s: 展開歷史參數成一行,附加在歷史列表後
命令歷史相關環境變量:
HISTSIZE:命令歷史記錄的條數;
HISTFILE:指定歷史文件,默認爲~/.bash_history;
HISTFILESIZE:命令歷史文件記錄歷史的條數;
HISTTIMEFORMAT=「%F %T「 顯示時間
HISTIGNORE=「str1:str2:… 「 忽略string1,string2歷史
控制命令歷史的記錄方式: 環境變量:HISTCONTROL
ignoredups:忽略重複的命令;連續且相同方爲「重複」
ignorespace:忽略全部以空白開頭的命令
ignoreboth:ignoredups, ignorespace
erasedups:刪除重複命令
export 變量名="值「
存放在 /etc/profile 或 ~/.bash_profile