對於那些主要通過控制台或終端使用 Linux 命令行來工作的 Linux 用戶來說,他們真切地感受到了 Linux 的強大。 然而在 Linux 的分層文件系統中進行導航有時或許是一件頭疼的事,尤其是對於那些新手來說。
現在,有一個用 Python 寫的名為 autojump
的 Linux 命令行實用程序,它是 Linux ‘cd’命令的高級版本。
Autojump – Linux 文件系統導航的最快方式
這個應用原本由 Joël Schaerer 編寫,現在由 +William Ting 維護。
Autojump 應用可以從用戶那裡學習並幫助用戶在 Linux 命令行中進行更輕松的目錄導航。與傳統的 cd
命令相比,autojump 能夠更加快速地導航至目的目錄。
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、 正如前面所言,在大多數的 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 軟件倉庫。http://www.linuxidc.com/Linux/2013-12/93433.htm
# yum install epel-release
# yum install autojump
或
# dnf install autojump
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
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 的幫助和選項
cd
到過的目錄。一旦你用 cd
切換到一個特定的目錄,這個行為就會被記錄到 autojump 的數據庫中,這樣 autojump 才能工作。不管怎樣,在你設定了 autojump 後,你不能跳到那些你沒有用 cd
到過的目錄。$PROMPT_COMMAND
環境變量來跟蹤目錄的行為,所以強烈建議不要去重寫 $PROMPT_COMMAND
這個環境變量。若你需要添加其他的命令到現存的 $PROMPT_COMMAND
環境變量中,請添加到$PROMPT_COMMAND
環境變量的最後。
假如你是一個命令行用戶, autojump 是你必備的實用程序。它可以簡化許多事情。它是一個在命令行中導航 Linux 目錄的絕佳的程序。請自行嘗試它,並在下面的評論框中讓我知曉你寶貴的反饋。保持聯系,保持分享。喜愛並分享,幫助我們更好地傳播。
via: Autojump - An Advanced 'cd' Command to Quickly Navigate Linux Filesystem
作者:Avishek Kumar 譯者:FSSlc 校對:wxy
本文由 LCTT 原創翻譯,Linux中國 榮譽推出