[root@linux ~]# history [n][root@linux ~]# history [-c][root@linux ~]# history [-raw] histfiles參數:n :數字,意思是『要列出最近的 n 筆命令列表』的意思!-c :將目前的 shell 中的所有 his...
[root@linux ~]# history [n]
[root@linux ~]# history [-c]
[root@linux ~]# history [-raw] histfiles
參數:
n :數字,意思是『要列出最近的 n 筆命令列表』的意思!
-c :將目前的 shell 中的所有 history 內容全部消除
-a :將目前新增的 history 指令新增入 histfiles 中,若沒有加 histfiles ,則預設寫入 ~/.bash_history
-r :將 histfiles 的內容讀到目前這個 shell 的 history 記憶中;
-w :將目前的 history 記憶內容寫入 histfiles 中!
範例:
範例一:列出目前記憶體內的所有 history 記憶
[root@linux ~]# history
# 前面省略
1017 man bash
1018 ll
1019 history
1020 history
# 列出的信息當中,共分兩欄,第一欄為該指令在這個 shell 當中的代碼,
# 另一個則是指令本身的內容喔!至於會秀出幾筆指令記錄,則與 HISTSIZE 有關!
範例二:列出目前最近的 3 筆資料
[root@linux ~]# history 3
1019 history
1020 history
1021 history 3
範例三:立刻將目前的資料寫入 histfile 當中
[root@linux ~]# history -w
# 在預設的情況下,會將歷史紀錄寫入 ~/.bash_history 當中!
[root@linux ~]# echo $HISTSIZE
1000
我們可以利用相關的功能來幫我們執行命令呢!舉例來說啰:
[root@linux ~]# !number
[root@linux ~]# !command
[root@linux ~]# !!
參數:
number :執行第幾筆指令的意思;
command :由最近的指令向前搜尋『指令串開頭為 command』的那個指令,並執行;
!! :就是執行上一個指令(相當於按↑按鍵後,按 Enter)
範例:
[root@linux ~]# history
66 man rm
67 alias
68 man history
69 history
[root@linux ~]# !66 <==執行第 66 筆指令
[root@linux ~]# !! <==執行上一個指令,本例中亦即 !66
[root@linux ~]# !al <==執行最近以 al 為開頭的指令(上頭列出的第 67 個)