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