linux的history命令
linux的history命令
Linux系統(tǒng)下history命令是一個可以顯示歷史記錄的命令,下面由學習啦小編為大家整理了linux的history命令的相關知識,希望大家喜歡!
linux的history命令詳解
History命令主要用于顯示歷史指令記錄內(nèi)容, 下達歷史紀錄中的指令。
1.History命令語法
[allen@linux]# history [n]
[allen@linux]# history [-c]
[allen@linux]# history [-raw] histfiles
2.參數(shù)
n :數(shù)字,要列出最近的 n 筆命令列表
-c :將目前的shell中的所有 history 內(nèi)容全部消除
-a :將目前新增的history 指令新增入 histfiles 中,若沒有加 histfiles ,
則預設寫入 ~/.bash_history
-r :將 histfiles 的內(nèi)容讀到目前這個 shell 的 history 記憶中
-w :將目前的 history 記憶內(nèi)容寫入 histfiles
Linux系統(tǒng)當你在shell(控制臺)中輸入并執(zhí)行命令時,shell會自動把你的命令記錄到歷史列表中,一般保存在用戶目錄下的.bash_history文件中。默認保存1000條,你也可以更改這個值。
如果你鍵入 history, history會向你顯示你所使用的前1000個歷史命令,并且給它們編了號,你會看到一個用數(shù)字編號的列表快速從屏幕上卷過。你可能不需要查看1000個命令中的所有項目, 當然你也可以加入數(shù)字來列出最近的 n 筆命令列表。
linux中history命令不僅僅讓我們可以查詢歷史命令而已. 我們還可以利用相關的功能來幫我們執(zhí)行命令。
3.運行特定的歷史命令
history會列出bash保存的所有歷史命令,并且給它們編了號,我們可以使用“嘆號接編號”的方式運行特定的歷史命令.
語法說明:
[allen@linux]# [!number] [!command] [!!]
參數(shù)說明:
number :第幾個指令的意思;
command :指令的開頭幾個字母
! :上一個指令的意思!
Linux的History命令實戰(zhàn)
列出所有的歷史記錄:
[allen@linux] # history
只列出最近10條記錄:
[allen@linux] # history 10 (注,history和10中間有空格)
使用命令記錄號碼執(zhí)行命令,執(zhí)行歷史清單中的第99條命令
[allen@linux] #!99 (!和99中間沒有空格)
重復執(zhí)行上一個命令
[allen@linux] #!!
執(zhí)行最后一次以rpm開頭的命令(!? ?代表的是字符串,這個String可以隨便輸,Shell會從最后一條歷史命令向前搜索,最先匹配的一條命令將會得到執(zhí)行。)
[allen@linux] #!rpm
逐屏列出所有的歷史記錄:
[allen@linux]# history | more
立即清空history當前所有歷史命令的記錄
[allen@linux] #history -c
除了使用history命令,在 shell 或 GUI 終端提示下,你也可以使用上下方向鍵來翻閱命令歷史(向下箭頭會向前翻閱),直到你找到所需命令為止。這可以讓我們很方便地編輯前面的某一條命令,而不用重復輸入類似的命令。
History命令的用途確實很大!但需要小心安全的問題!尤其是 root 的歷史紀錄檔案,這是黑客們的最愛!因為不小心的 root 會將很多的重要資料在執(zhí)行的過程中會被紀錄在 ~/.bash_history 當中,如果這個檔案被解析的話,后果不堪設想!