顯示歷史列表中的命令或修改指定的歷史命令并執行。
fc [-e ename] [-lnr] [first] [last]
fc -s [pat=rep] [command]
顯示歷史列表中的命令。
編輯并重新執行歷史列表的命令。
-e ename 選擇使用的編輯器,默認調用次序為環境變量`FCEDIT`、環境變量`EDITOR`、`vi`。
-l 列出而不是編輯。
-n 列出時不輸出行號(需配合-l選項)。
-r 倒序列出命令,最近執行的先列出(需配合-l選項)。
-s [pat=rep] [command] command(未指定時為最后執行的命令)將在pat替換為rep后重新執行。
first:可選;可以是字符串(以該字符串開頭的最新命令)、數字(歷史列表索引,負數代表當前命令號的偏移);未指定時設置為前一個命令并且偏移量為-16(最近的16條命令)。
last:可選;可以是字符串(以該字符串開頭的最新命令)、數字(歷史列表索引,負數代表當前命令號的偏移);未指定時設置為參數first。
返回成功或執行命令的狀態,當錯誤出現時返回非0值。
替換命令參數:
# 列出 ~ 目錄
ls ~
# 替換 ~ 為 / ,替換后列出根目錄,
fc -s ~=/
顯示最近使用的10條歷史命令:
[root@localhost ~]# fc -l -10
1039 type -a grep
1040 export
1041 history 10
1042 ulimit -a
1043 shopt
1044 help ls
1045 help env
1046 help short
1047 help shopt
1048 showkey -a
編輯第1040條歷史命令:
[root@localhost ~]# fc 1040
~/.bash_history
。FCEDIT
的值為fc
默認的編輯器。help
命令。