天天看點

自動補完不算什麼,一鍵直達目錄才是終極神器!自動補完不算什麼,一鍵直達目錄才是終極神器!

在指令行中切換目錄是最常用的操作,不過很少有比一遍又一遍重複“cd ls cd ls cd ls ……”更令人沮喪的事情了。如果你不是百分百确定你想要進入的下一個目錄的名字,那麼你不得不使用ls來确認,然後使用cd來進入你想要進的那一個。所幸的是,現在大量的終端和shell語言提供了強大的自動補全功能來處理該問題。但是,你仍然需要一直瘋狂地敲擊tab鍵來幹這事。如果你和我一樣懶惰,你一定會對autojump感到驚喜。

autojump是一個指令行工具,它允許你可以直接跳轉到你喜愛的目錄,而不用管你現在身在何處。

自動補完不算什麼,一鍵直達目錄才是終極神器!自動補完不算什麼,一鍵直達目錄才是終極神器!

<a target="_blank"></a>

在ubuntu或debian上安裝autojump:

$ sudo apt-get install autojump

$ sudo yum install autojump

在archlinux上安裝autojump:

$ sudo pacman -s autojump

autojump的工作方式很簡單:它會在你每次啟動指令時記錄你目前位置,并把它添加進它自身的資料庫中。這樣,某些目錄比其它一些目錄添加的次數多,這些目錄一般就代表你最重要的目錄,而它們的“權重”也會增大。

現在不管你在哪個目錄,你都可以使用下面的文法來直接跳轉到這些目錄:

autojump [目錄的名字或名字的一部分]

注意,你不需要輸入完整的名稱,因為autojump會檢索它的資料庫,并傳回最可能的結果。

例如,假定我們正在下面的目錄結構中工作。

自動補完不算什麼,一鍵直達目錄才是終極神器!自動補完不算什麼,一鍵直達目錄才是終極神器!

那麼下面的指令将直接讓你跳到/root/home/doc下,不管你目前位置在哪裡。

$ autojump do

如果你也很讨厭打字,那麼我推薦你為autojump起個别名,或者使用預設的别名。

$ j [目錄的名字或名字的一部分]

另外一個引人注目的功能是,autojump支援zsh和自動補完。如果你不确認哪裡是不是你要跳轉的地方,敲擊tab鍵就會列出完整路徑。

還是同樣的例子,輸入:

$ autojump d

然後敲擊tab鍵,将會傳回/root/home/doc或者/root/home/ddl。

最後,對于進階使用者,你可以通路目錄資料庫,并修改它的内容。可以使用下面的指令來手動添加一個目錄:

$ autojump -a [目錄]

如果你突然想要把目前目錄變成你的最愛和使用最頻繁的檔案夾,你可以在該目錄通過指令的參數 i 來手工增加它的權重

$ autojump -i [權重]

這将使得該目錄更可能被選擇跳轉。相反的例子是在該目錄使用參數 d 來減少權重:

$ autojump -d [權重]

要跟蹤所有這些改變,輸入:

$ autojump -s

這會顯示資料庫中的統計資料。而以下:

$ autojump --purge

指令将會把不再存在的目錄從資料庫中移除。

你覺得autojump怎麼樣?你會經常用它麼?發表一下你的評論吧。

原文釋出時間:2014-07-15

本文來自雲栖合作夥伴“linux中國”