history的功能真是丰富:
有如下这些:
排版模式为:
可复制版本:
ctrl + r
搜索历史命令
输入关键词即可
再按ctrl r表示下一个
如果确定,就按enter
如果需要修改,就按左右键
查看命令的执行时间
export HISTTIMEFORMAT=’%F %T ’
或者加入到bashrc中
再输入history时候,就会出现
1272 2016-04-11 12:39:20 ls
1273 2016-04-11 12:42:39 history
的效果了
重复执行上一条指令:
按上,再按enter
輸入 !! 在按下 Enter 鍵,就會執行上一個指令
輸入 !-1 在按下 Enter 鍵,就會執行上一個指令。
按下 Ctrl + P 會顯示上一個指令,而按下 Enter 鍵即可執行。
從指令歷史紀錄中選擇一個指令執行
!数字
数字 的内容为 history后,出现的id,比如
1272 2016-04-11 12:39:20 ls
中的 的1272
執行以某個關鍵字開頭的指令
!h 如果上一条是history,这样就可以执行了
更改指令歷史紀錄的大小
export HISTSIZE=450
export HISTFILESIZE=450
默认500条
刪除連續且重複的歷史紀錄
export HISTCONTROL=ignoredups
刪除所有重複的歷史紀錄
export HISTCONTROL=erasedups
讓某些指令不要紀錄在歷史紀錄中
export HISTCONTROL=ignorespace
空格开头的就不记录
暫時清除所有的歷史紀錄
history -c
在重新登入之後,還是會回覆以前紀錄,不用擔心把不該刪的東西砍了
上一行指令參數的替換
最后一个参数 !
如cat!
第一个参数 !^
所有参数 !*
!:n,n代表第几个参数
ls long-long-filename1.txt long-long-filename2.txt long-long-filename3.txt
cat !:2
即 long-long-filename2.txt
指定指令參數的替換
!key:
cat!ls:
停用指令歷史紀錄
export HISTSIZE=0
讓歷史紀錄忽略某些常用指令
export HISTIGNORE=”pwd:ls:ls -ltr:”
必須要很明確指定要忽略的指令,即便是只有參數不同,也會被視為不同的指令,像 ls 與 ls -ltr 這兩個就會被當成是不一樣的
列出最近幾筆歷史紀錄
history | more
history 10
原文链接:
http://blogger.gtwang.org/2013/10/mastering-linux-command-line-history.html