天天看點

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

對于那些主要通過控制台或終端使用 linux 指令行來工作的 linux 使用者來說,他們真切地感受到了 linux 的強大。 然而在 linux 的分層檔案系統中進行導航有時或許是一件頭疼的事,尤其是對于那些新手來說。

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

autojump – linux 檔案系統導航的最快方式

這個應用原本由 joël schaerer 編寫,現在由 +william ting 維護。

autojump 應用可以從使用者那裡學習并幫助使用者在 linux 指令行中進行更輕松的目錄導航。與傳統的 <code>cd</code> 指令相比,autojump 能夠更加快速地導航至目的目錄。

自由開源的應用,在 gpl v3 協定下釋出。

自主學習的應用,從使用者的導航習慣中學習。

更快速地導航。不必包含子目錄的名稱。

對于大多數的标準 linux 發行版本,能夠在軟體倉庫中下載下傳得到,它們包括 debian (testing/unstable), ubuntu, mint, arch, gentoo, slackware, centos, redhat 和 fedora。

也能在其他平台中使用,例如 os x(使用 homebrew) 和 windows (通過 clink 來實作)

使用 autojump 你可以跳至任何特定的目錄或一個子目錄。你還可以用檔案管理器打開某個目錄,并檢視你在某個目錄中所待時間的統計資料。

版本号不低于 2.6 的 python

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

1、 以 root 使用者的身份,做一次系統更新或更新,以此保證你安裝有最新版本的 python。

<code># apt-get update &amp;&amp; apt-get upgrade &amp;&amp; apt-get dist-upgrade [基于 apt 的系統]</code>

<code># yum update &amp;&amp; yum upgrade [基于 yum 的系統]</code>

<code># dnf update &amp;&amp; dnf upgrade [基于 dnf 的系統]</code>

注 : 這裡特别提醒,在基于 yum 或 dnf 的系統中,更新和更新執行相同的行動,大多數時間裡它們是通用的,這點與基于 apt 的系統不同。

2、 正如前面所言,在大多數的 linux 發行版本的軟體倉庫中, autojump 都可擷取到。通過包管理器你就可以安裝它。但若你想從源代碼開始來安裝它,你需要克隆源代碼并執行 python 腳本,如下面所示:

若沒有安裝 git,請安裝它。我們需要使用它來克隆 git 倉庫。

<code># apt-get install git [基于 apt 的系統]</code>

<code># yum install git [基于 yum 的系統]</code>

<code># dnf install git [基于 dnf 的系統]</code>

一旦安裝完 git,以普通使用者身份登入,然後像下面那樣來克隆 autojump:

<code>$ git clone git://github.com/joelthelion/autojump.git</code>

接着,使用 <code>cd</code> 指令切換到下載下傳目錄。

<code>$ cd autojump</code>

下載下傳,賦予安裝腳本檔案可執行權限,并以 root 使用者身份來運作安裝腳本。

<code># chmod 755 install.py</code>

<code># ./install.py</code>

3、 假如你不想麻煩,你可以以 root 使用者身份從軟體倉庫中直接安裝它:

在 debian, ubuntu, mint 及類似系統中安裝 autojump :

<code># apt-get install autojump</code>

<code># yum install epel-release</code>

<code># yum install autojump</code>

<code>或</code>

<code># dnf install autojump</code>

4、 在 debian 及其衍生系統 (ubuntu, mint,…) 中, 激活 autojump 應用是非常重要的。

為了暫時激活 autojump 應用,即直到你關閉目前會話或打開一個新的會話之前讓 autojump 均有效,你需要以正常使用者身份運作下面的指令:

<code>$ source /usr/share/autojump/autojump.sh on startup</code>

為了使得 autojump 在 bash shell 中永久有效,你需要運作下面的指令。

<code>$ echo '. /usr/share/autojump/autojump.sh' &gt;&gt; ~/.bashrc</code>

5、 如先前所言, autojump 将隻跳到先前 <code>cd</code> 指令到過的目錄。是以在我們開始測試之前,我們要使用 <code>cd</code>切換到一些目錄中去,并建立一些目錄。下面是我所執行的指令。

<code>$ cd</code>

<code>$ cd desktop/</code>

<code>$ cd documents/</code>

<code>$ cd downloads/</code>

<code>$ cd music/</code>

<code>$ cd pictures/</code>

<code>$ cd public/</code>

<code>$ cd templates</code>

<code>$ cd /var/www/</code>

<code>$ mkdir autojump-test/</code>

<code>$ mkdir autojump-test/a/ &amp;&amp; cd autojump-test/a/</code>

<code>$ mkdir autojump-test/b/ &amp;&amp; cd autojump-test/b/</code>

<code>$ mkdir autojump-test/c/ &amp;&amp; cd autojump-test/c/</code>

現在,我們已經切換到過上面所列的目錄,并為了測試建立了一些目錄,一切準備就緒,讓我們開始吧。

需要記住的一點 : <code>j</code> 是 autojump 的一個封裝,你可以使用 <code>j</code> 來代替 autojump, 相反亦可。

6、 使用 -v 選項檢視安裝的 autojump 的版本。

<code>$ j -v</code>

<code>$ autojump -v</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

檢視 autojump 的版本

7、 跳到先前到過的目錄 ‘/var/www‘。

<code>$ j www</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

跳到目錄

8、 跳到先前到過的子目錄‘/home/avi/autojump-test/b‘ 而不鍵入子目錄的全名。

<code>$ jc b</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

跳到子目錄

9、 使用下面的指令,你就可以從指令行打開一個檔案管理器,例如 gnome nautilus ,而不是跳到一個目錄。

<code>$ jo www</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

打開目錄

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

在檔案管理器中打開目錄

你也可以在一個檔案管理器中打開一個子目錄。

<code>$ jco c</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

打開子目錄

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

在檔案管理器中打開子目錄

10、 檢視每個檔案夾的權重和全部檔案夾計算得出的總權重的統計資料。檔案夾的權重代表在這個檔案夾中所花的總時間。 檔案夾權重是該清單中目錄的數字。(lctt 譯注: 在這一句中,我覺得原文中的 if 應該為 is)

<code>$ j --stat</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

檢視檔案夾統計資料

提醒 : autojump 存儲其運作日志和錯誤日志的地方是檔案夾 <code>~/.local/share/autojump/</code>。千萬不要重寫這些檔案,否則你将失去你所有的統計狀态結果。

<code>$ ls -l ~/.local/share/autojump/</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

autojump 的日志

11、 假如需要,你隻需運作下面的指令就可以檢視幫助 :

<code>$ j --help</code>

Autojump:一個可以在 Linux 檔案系統快速導航的進階 cd 指令

autojump 的幫助和選項

autojump 隻能讓你跳到那些你已經用 <code>cd</code> 到過的目錄。一旦你用 <code>cd</code> 切換到一個特定的目錄,這個行為就會被記錄到 autojump 的資料庫中,這樣 autojump 才能工作。不管怎樣,在你設定了 autojump 後,你不能跳到那些你沒有用 <code>cd</code> 到過的目錄。

在 bash shell 中,autojump 通過修改 <code>$prompt_command</code> 環境變量來跟蹤目錄的行為,是以強烈建議不要去重寫 <code>$prompt_command</code> 這個環境變量。若你需要添加其他的指令到現存的<code>$prompt_command</code> 環境變量中,請添加到<code>$prompt_command</code> 環境變量的最後。

假如你是一個指令行使用者, autojump 是你必備的實用程式。它可以簡化許多事情。它是一個在指令行中導航 linux 目錄的絕佳的程式。請自行嘗試它,并在下面的評論框中讓我知曉你寶貴的回報。保持聯系,保持分享。喜愛并分享,幫助我們更好地傳播。

本文來自雲栖社群合作夥伴“linux中國”,原文釋出日期:2015-08-10