如果你經常使用Linux命令行,那么使用history(歷史)命令可以有效地提升你的效率。本文將通過實例的方式向你介紹history命令的15中用法
1、使用HISTTIMEFORMAT 顯示時間戳
當你從命令行執行 history 命令后,通常只會顯示已執行命令的序號和命令本身。如果你想要查看命令的時間戳,那么可以執行:
# export HISTTIMEFORMAT='%F %T'
# history | more
2、使用 Ctrl + R 搜索歷史
Ctrl + R 是我們經常使用的一個快捷鍵。此快捷鍵讓你對命令歷史進行搜索,對于想要重復執行某個命令的時候非常有用。當找到命令后,通常再按回車鍵就可以執行該命令。如果想對找到的命令進行調整再執行,則可以按一下左或右方向鍵
3、快速重復執行上一條命令
有4中方法可以重復執行上一條命令
1、使用上方向鍵,并回車執行
2、按!!
并回車執行
3、輸入!-1
并回車執行
4、按Ctrl + P
并回車執行
4、從命令歷史中執行一個指定的命令
在下面的歷史中如果你想要重復執行第 1011 條命令,那么可以執行
!1011
5、通過指定關鍵字來執行以前的命令
在下面的例子,輸入 !ech 并回車,將執行以 ech 打頭的命令:
6、使用HISTSIZE 控制歷史命令記錄的總行數
將下面的兩行內容追加到.bash_profile
文件并重新登入 bash shell ,命令歷史的記錄數將變成300條
# vim ~/.bash_profile
HISTSIZE=300
HISTFILESIZE=300
7、使用HISTCONTROL 從命令歷史中刪除連續重復的命令
# export HISTCONTROL=ignoredups
8、使用HISTCONTROL 清楚整個命令歷史中重復的條目
# export HISTCONTROL=erasedups
9使用HISTCONTROL 強制 history 不記錄特定的命令
將HISTCONTROL 設置為 ignorespase ,并在不想被記住的命令前面輸入一個空格
# export HISTCONTROL=erasedups
10、使用 -c
選項清楚所有的命令歷史
# history -c
11、命令替換
!$
將為當前的命令獲得上一條命令的參數(!!:$
也可以達到同樣的效果)
!^
獲得上一條命令的第一項參數
12、為特定的命令指定特定的參數
在下面的例子,
!cp:2
從命令歷史中搜索以cp
開頭的命令,并獲取它的第二項參數
13、**使用 HISTSIZE 禁用 history **
如果你想禁用 history ,可以將HISTSIZE 設置為 0
# export HISTSIZE =0
14、使用 HISTIGNORE 忽略歷史中的特定命令
下面的例子中將忽略 pwd、ls、ls -ltr
命令:
# export HISTIGNORE="pwd:ls:ls -ltr:"