在Linux中使用history命令的方法
用強(qiáng)大的 history 命令使你的命令行提示符更有效率。
隨著我在終端中花費(fèi)越來越多的時間,我感覺就像在不斷地尋找新的命令,以使我的日常任務(wù)更加高效。GNU 的 history 命令是一個真正改變我日常工作的命令。
GNU history 命令保存了從該終端會話運(yùn)行的所有其他命令的列表,然后允許你重放或者重用這些命令,而不用重新輸入它們。如果你是一個老玩家,你知道 history 的力量,但對于我們這些半吊子或新手系統(tǒng)管理員來說, history 是一個立竿見影的生產(chǎn)力增益。
歷史 101
要查看命令歷史,請在 Linux 中打開終端程序,然后輸入:
$ history
這是我得到的響應(yīng):
clear
ls -al
sudo dnf update -y
history
history 命令顯示自開始會話后輸入的命令列表。 history 有趣的地方是你可以使用以下命令重放任意一個命令:
$ !3
提示符中的 !3 告訴 shell 重新運(yùn)行歷史列表中第 3 個命令。我還可以輸入以下命令來使用:
linuser@my_linux_box: !sudo dnf
history 將搜索與你提供的模式相匹配的最后一個命令,并運(yùn)行它。
搜索歷史
你還可以輸入 !! 重新運(yùn)行命令歷史中的最后一條命令。而且,通過與 grep 配對,你可以搜索與文本模式相匹配的命令,或者通過與 tail 一起使用,你可以找到你最后幾條執(zhí)行的命令。例如:
$ history | grep dnf sudo dnf update -y history | grep dnf $ history | tail -n 3 history history | grep dnf history | tail -n 3
另一種實(shí)現(xiàn)這個功能的方法是輸入 Ctrl-R 來調(diào)用你的命令歷史記錄的遞歸搜索。輸入后,提示變?yōu)椋?/p>
(reverse-i-search)`':
現(xiàn)在你可以開始輸入一個命令,并且會顯示匹配的命令,按回車鍵執(zhí)行。
更改已執(zhí)行的命令
history 還允許你使用不同的語法重新運(yùn)行命令。例如,如果我想改變我以前的命令 history | grep dnf 成 history | grep ssh ,我可以在提示符下執(zhí)行以下命令:
$^dnf^ssh^
history 將重新運(yùn)行該命令,但用 ssh 替換 dnf ,并執(zhí)行它。
刪除歷史
有時你想要刪除一些或全部的歷史記錄。如果要刪除特定命令,請輸入 history -d <行號> 。要清空歷史記錄,請執(zhí)行 history -c 。
歷史文件存儲在一個你可以修改的文件中。bash shell 用戶可以在他們的家目錄下找到 .bash_history 。
下一步
你可以使用 history 做許多其他事情:
- 將歷史緩沖區(qū)設(shè)置為一定數(shù)量
- 記錄歷史中每行的日期和時間
- 防止某些命令被記錄在歷史記錄中
有關(guān) history 命令的更多信息和其他有趣的事情,請參考 https://www.gnu.org/software/bash/manual/ 。
總結(jié)
以上所述是小編給大家介紹的在Linux中使用history命令的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
類Linux環(huán)境安裝jdk1.8及環(huán)境變量配置詳解
如何在linux系統(tǒng)中安裝jdk1.8?很多小伙伴都不知道在linux系統(tǒng)中怎么安裝jdk,下面,小編就為大家介紹下在linux系統(tǒng)中安裝jdk1.8方法。2019-09-09
Linux自動化交互腳本expect從安裝到開發(fā)詳解
運(yùn)行shell腳本有時會提示輸入密碼,如何讓腳本自動輸入密碼呢?這時使用expect,Expect是基于Tcl發(fā)展而來的,它不僅可以進(jìn)行交互,還可以根據(jù)程序的提示模擬標(biāo)準(zhǔn)輸入,實(shí)現(xiàn)自動化交互執(zhí)行的功能,在排查expect腳本執(zhí)行問題時,應(yīng)關(guān)注腳本是如何被調(diào)用和執(zhí)行的2024-06-06
linux后臺執(zhí)行命令&和nohup的具體使用方法
這篇文章主要介紹了linux后臺執(zhí)行命令&和nohup的具體使用方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
Linux下Redis設(shè)置密碼及開機(jī)自啟動
這篇文章主要介紹了Linux下Redis設(shè)置密碼及開機(jī)自啟動的相關(guān)資料,需要的朋友可以參考下2016-12-12
解決ssh遠(yuǎn)程登陸linux顯示-bash-4.1$的問題
下面小編就為大家?guī)硪黄鉀Qssh遠(yuǎn)程登陸linux顯示-bash-4.1$的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-12-12
Linux如何實(shí)現(xiàn)斷點(diǎn)續(xù)傳文件功能
最近在工作中遇到一個需求,要實(shí)現(xiàn)Linux下的文件傳輸,支持?jǐn)帱c(diǎn)續(xù)傳,所以這篇文章主要給大家介紹了關(guān)于Linux如何實(shí)現(xiàn)斷點(diǎn)續(xù)傳文件功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。2017-12-12

