在命令行中切換目錄是最常用的操作,不過很少有比一遍又一遍重復(fù)“cd ls cd ls cd ls ……”更令人沮喪的事情了。如果你不是百分百確定你想要進(jìn)入的下一個(gè)目錄的名字,那么你不得不使用ls來確認(rèn),然后使用cd來進(jìn)入你想要進(jìn)的那一個(gè)。所幸的是,現(xiàn)在大量的終端和shell語言提供了強(qiáng)大的自動(dòng)補(bǔ)全功能來處理該問題。但是,你仍然需要一直瘋狂地敲擊TAB鍵來干這事。如果你和我一樣懶惰,你一定會(huì)對(duì)autojump感到驚喜。
autojump是一個(gè)命令行工具,它允許你可以直接跳轉(zhuǎn)到你喜愛的目錄,而不用管你現(xiàn)在身在何處。
在Linux上安裝autojump
在Ubuntu或Debian上安裝autojump:
$sudo apt-get install autojump
要在CentOS或Fedora上安裝autojump,請(qǐng)使用yum命令。在CentOS上,你需要先啟用EPEL倉(cāng)庫(kù)才行。
$sudo yum install autojump
在Archlinux上安裝autojump:
$sudo pacman -Sautojump
如果你找不到適合你的版本的包,你可以從GitHub上下載源碼包來編譯。
autojump的基本用法
autojump的工作方式很簡(jiǎn)單:它會(huì)在你每次啟動(dòng)命令時(shí)記錄你當(dāng)前位置,并把它添加進(jìn)它自身的數(shù)據(jù)庫(kù)中。這樣,某些目錄比其它一些目錄添加的次數(shù)多,這些目錄一般就代表你最重要的目錄,而它們的“權(quán)重”也會(huì)增大。
現(xiàn)在不管你在哪個(gè)目錄,你都可以使用下面的語法來直接跳轉(zhuǎn)到這些目錄:
autojump[目錄的名字或名字的一部分]
注意,你不需要輸入完整的名稱,因?yàn)閍utojump會(huì)檢索它的數(shù)據(jù)庫(kù),并返回最可能的結(jié)果。
例如,假定我們正在下面的目錄結(jié)構(gòu)中工作。
那么下面的命令將直接讓你跳到/root/home/doc下,不管你當(dāng)前位置在哪里。
$autojump do
如果你也很討厭打字,那么我推薦你為autojump起個(gè)別名,或者使用默認(rèn)的別名。
$j[目錄的名字或名字的一部分]
另外一個(gè)引人注目的功能是,autojump支持zsh和自動(dòng)補(bǔ)完。如果你不確認(rèn)哪里是不是你要跳轉(zhuǎn)的地方,敲擊TAB鍵就會(huì)列出完整路徑。
還是同樣的例子,輸入:
$autojumpd
然后敲擊tab鍵,將會(huì)返回/root/home/doc或者/root/home/ddl。
最后,對(duì)于高級(jí)用戶,你可以訪問目錄數(shù)據(jù)庫(kù),并修改它的內(nèi)容。可以使用下面的命令來手動(dòng)添加一個(gè)目錄:
$autojump -a[目錄]
如果你突然想要把當(dāng)前目錄變成你的最愛和使用最頻繁的文件夾,你可以在該目錄通過命令的參數(shù) i 來手工增加它的權(quán)重
$autojump -i[權(quán)重]
這將使得該目錄更可能被選擇跳轉(zhuǎn)。相反的例子是在該目錄使用參數(shù) d 來減少權(quán)重:
$autojump -d[權(quán)重]
要跟蹤所有這些改變,輸入:
$autojump -s
這會(huì)顯示數(shù)據(jù)庫(kù)中的統(tǒng)計(jì)數(shù)據(jù)。而以下:
$autojump --purge
命令將會(huì)把不再存在的目錄從數(shù)據(jù)庫(kù)中移除。
簡(jiǎn)言之,autojump將會(huì)受到所有命令行高級(jí)用戶的歡迎。不管你是在ssh進(jìn)一臺(tái)服務(wù)器,還是僅僅想要追隨復(fù)古潮流,敲更少的鍵來減少導(dǎo)航時(shí)間總是件好事。如果你真的熱衷于此類工具,你也肯定也想看看Fasd,它應(yīng)該會(huì)給你一個(gè)驚喜——我們下次再介紹它。
你覺得autojump怎么樣?你會(huì)經(jīng)常用它么?發(fā)表一下你的評(píng)論吧。
-
Linux
+關(guān)注
關(guān)注
87文章
11508瀏覽量
213642
原文標(biāo)題:自動(dòng)補(bǔ)全不算什么,一鍵直達(dá)目錄才是終極神器
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
C語言入門教程-命令行參數(shù)
caxa命令行中的應(yīng)用
Shell命令行解釋器簡(jiǎn)介
OneCommand命令行接口用戶手冊(cè)11.0和11.1

Emulex OneCommand命令行接口用戶指南 12.2版

OneCommand Manager命令行界面用戶手冊(cè)

評(píng)論