Autojump:一個可以在 Linux 文件系統快速導航的高級 cd 命令
Autojump – Linux 文件系統導航的最快方式
這個應用原本由 Joël Schaerer 編寫,現在由 +William Ting 維護。
Autojump 應用可以從用戶那裡學習並幫助用戶在 Linux 命令行中進行更輕鬆的目錄導航。與傳統的 cd
命令相比,autojump 能夠更加快速地導航至目的目錄。
autojump 的特色
- 自由開源的應用,在 GPL V3 協議下發布。
- 自主學習的應用,從用戶的導航習慣中學習。
- 更快速地導航。不必包含子目錄的名稱。
- 對於大多數的標準 Linux 發行版本,能夠在軟體倉庫中下載得到,它們包括 Debian (testing/unstable), Ubuntu, Mint, Arch, Gentoo, Slackware, CentOS, RedHat 和 Fedora。
- 也能在其他平台中使用,例如 OS X(使用 Homebrew) 和 Windows (通過 Clink 來實現)
- 使用 autojump 你可以跳至任何特定的目錄或一個子目錄。你還可以用文件管理器打開某個目錄,並查看你在某個目錄中所待時間的統計數據。
前提
- 版本號不低於 2.6 的 Python
第 1 步: 做一次完整的系統升級
1、 以 root 用戶的身份,做一次系統更新或升級,以此保證你安裝有最新版本的 Python。
# apt-get update && apt-get upgrade && apt-get dist-upgrade [基於 APT 的系統]
# yum update && yum upgrade [基於 YUM 的系統]
# dnf update && dnf upgrade [基於 DNF 的系統]
注 : 這裡特別提醒,在基於 YUM 或 DNF 的系統中,更新和升級執行相同的行動,大多數時間裡它們是通用的,這點與基於 APT 的系統不同。
第 2 步: 下載和安裝 Autojump
2、 正如前面所言,在大多數的 Linux 發行版本的軟體倉庫中, autojump 都可獲取到。通過包管理器你就可以安裝它。但若你想從源代碼開始來安裝它,你需要克隆源代碼並執行 python 腳本,如下面所示:
從源代碼安裝
若沒有安裝 git,請安裝它。我們需要使用它來克隆 git 倉庫。
# apt-get install git [基於 APT 的系統]
# yum install git [基於 YUM 的系統]
# dnf install git [基於 DNF 的系統]
一旦安裝完 git,以普通用戶身份登錄,然後像下面那樣來克隆 autojump:
$ git clone git://github.com/joelthelion/autojump.git
接著,使用 cd
命令切換到下載目錄。
$ cd autojump
下載,賦予安裝腳本文件可執行許可權,並以 root 用戶身份來運行安裝腳本。
# chmod 755 install.py
# ./install.py
從軟體倉庫中安裝
3、 假如你不想麻煩,你可以以 root 用戶身份從軟體倉庫中直接安裝它:
在 Debian, Ubuntu, Mint 及類似系統中安裝 autojump :
# apt-get install autojump
為了在 Fedora, CentOS, RedHat 及類似系統中安裝 autojump, 你需要啟用 EPEL 軟體倉庫。
# yum install epel-release
# yum install autojump
或
# dnf install autojump
第 3 步: 安裝後的配置
4、 在 Debian 及其衍生系統 (Ubuntu, Mint,…) 中, 激活 autojump 應用是非常重要的。
為了暫時激活 autojump 應用,即直到你關閉當前會話或打開一個新的會話之前讓 autojump 均有效,你需要以常規用戶身份運行下面的命令:
$ source /usr/share/autojump/autojump.sh on startup
為了使得 autojump 在 BASH shell 中永久有效,你需要運行下面的命令。
$ echo '. /usr/share/autojump/autojump.sh' >> ~/.bashrc
第 4 步: Autojump 的預測試和使用
5、 如先前所言, autojump 將只跳到先前 cd
命令到過的目錄。所以在我們開始測試之前,我們要使用 cd
切換到一些目錄中去,並創建一些目錄。下面是我所執行的命令。
$ cd
$ cd
$ cd Desktop/
$ cd
$ cd Documents/
$ cd
$ cd Downloads/
$ cd
$ cd Music/
$ cd
$ cd Pictures/
$ cd
$ cd Public/
$ cd
$ cd Templates
$ cd
$ cd /var/www/
$ cd
$ mkdir autojump-test/
$ cd
$ mkdir autojump-test/a/ && cd autojump-test/a/
$ cd
$ mkdir autojump-test/b/ && cd autojump-test/b/
$ cd
$ mkdir autojump-test/c/ && cd autojump-test/c/
$ cd
現在,我們已經切換到過上面所列的目錄,並為了測試創建了一些目錄,一切準備就緒,讓我們開始吧。
需要記住的一點 : j
是 autojump 的一個封裝,你可以使用 j
來代替 autojump, 相反亦可。
6、 使用 -v 選項查看安裝的 autojump 的版本。
$ j -v
或
$ autojump -v
查看 Autojump 的版本
7、 跳到先前到過的目錄 『/var/www『。
$ j www
跳到目錄
8、 跳到先前到過的子目錄『/home/avi/autojump-test/b『 而不鍵入子目錄的全名。
$ jc b
跳到子目錄
9、 使用下面的命令,你就可以從命令行打開一個文件管理器,例如 GNOME Nautilus ,而不是跳到一個目錄。
$ jo www
打開目錄
在文件管理器中打開目錄
你也可以在一個文件管理器中打開一個子目錄。
$ jco c
打開子目錄
在文件管理器中打開子目錄
10、 查看每個文件夾的權重和全部文件夾計算得出的總權重的統計數據。文件夾的權重代表在這個文件夾中所花的總時間。 文件夾權重是該列表中目錄的數字。(LCTT 譯註: 在這一句中,我覺得原文中的 if 應該為 is)
$ j --stat
查看文件夾統計數據
提醒 : autojump 存儲其運行日誌和錯誤日誌的地方是文件夾 ~/.local/share/autojump/
。千萬不要重寫這些文件,否則你將失去你所有的統計狀態結果。
$ ls -l ~/.local/share/autojump/
Autojump 的日誌
11、 假如需要,你只需運行下面的命令就可以查看幫助 :
$ j --help
Autojump 的幫助和選項
功能需求和已知的衝突
- autojump 只能讓你跳到那些你已經用
cd
到過的目錄。一旦你用cd
切換到一個特定的目錄,這個行為就會被記錄到 autojump 的資料庫中,這樣 autojump 才能工作。不管怎樣,在你設定了 autojump 後,你不能跳到那些你沒有用cd
到過的目錄。 - 你不能跳到名稱以破折號 (-) 開頭的目錄。或許你可以考慮閱讀我的有關操作文件或目錄 的文章,尤其是有關操作那些以『-『 或其他特殊字元開頭的文件和目錄的內容。
- 在 BASH shell 中,autojump 通過修改
$PROMPT_COMMAND
環境變數來跟蹤目錄的行為,所以強烈建議不要去重寫$PROMPT_COMMAND
這個環境變數。若你需要添加其他的命令到現存的$PROMPT_COMMAND
環境變數中,請添加到$PROMPT_COMMAND
環境變數的最後。
結論:
假如你是一個命令行用戶, autojump 是你必備的實用程序。它可以簡化許多事情。它是一個在命令行中導航 Linux 目錄的絕佳的程序。請自行嘗試它,並在下面的評論框中讓我知曉你寶貴的反饋。保持聯繫,保持分享。喜愛並分享,幫助我們更好地傳播。
via: http://www.tecmint.com/autojump-a-quickest-way-to-navigate-linux-filesystem/
作者:Avishek Kumar 譯者:FSSlc 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive