安裝 Pick 以及其用法解析
今天,我們要講的是一款有趣的命令行工具,名叫 Pick。它允許用戶(hù)通過(guò) ncurses(3X) 界面來(lái)從一系列選項(xiàng)中進(jìn)行選擇,而且還支持模糊搜索的功能。當(dāng)你想要選擇某個(gè)名字中包含非英文字符的目錄或文件時(shí),這款工具就很有用了。你根本都無(wú)需學(xué)習(xí)如何輸入非英文字符。借助 Pick,你可以很方便地進(jìn)行搜索、選擇,然后瀏覽該文件或進(jìn)入該目錄。你甚至無(wú)需輸入任何字符來(lái)過(guò)濾文件/目錄。這很適合那些有大量目錄和文件的人來(lái)用。
安裝 Pick
對(duì) Arch Linux 及其衍生品來(lái)說(shuō),Pick 放在 AUR 中。因此 Arch 用戶(hù)可以使用類(lèi)似 Pacaur,Packer,以及 Yaourt 等 AUR 輔助工具來(lái)安裝它。
pacaur -S pick
或者,
packer -S pick
或者,
yaourt -S pick
Debian,Ubuntu,Linux Mint 用戶(hù)則可以通過(guò)運(yùn)行下面命令來(lái)安裝 Pick。
sudo apt-get install pick
其他的發(fā)行版則可以從這里下載最新的安裝包,然后按照下面的步驟來(lái)安裝。在寫(xiě)本指南時(shí),其最新版為 1.9.0。
wget https://github.com/calleerlandsson/pick/releases/download/v1.9.0/pick-1.9.0.tar.gz
tar -zxvf pick-1.9.0.tar.gz
cd pick-1.9.0/
使用下面命令進(jìn)行配置:
./configure
最后,構(gòu)建并安裝 Pick:
make
sudo make install
用法
通過(guò)將它與其他命令集成能夠大幅簡(jiǎn)化你的工作。我這里會(huì)給出一些例子,讓你理解它是怎么工作的。
讓們先創(chuàng)建一堆目錄。
mkdir -p abcd/efgh/ijkl/mnop/qrst/uvwx/yz/
現(xiàn)在,你想進(jìn)入目錄 /ijkl/。你有兩種選擇??梢允褂?cd 命令:
cd abcd/efgh/ijkl/
或者,創(chuàng)建一個(gè)快捷方式 或者說(shuō)別名指向這個(gè)目錄,這樣你可以迅速進(jìn)入該目錄。
但,使用 pick 命令則問(wèn)題變得簡(jiǎn)單的多??聪旅孢@個(gè)例子。
cd $(find . -type d | pick)
這個(gè)命令會(huì)列出當(dāng)前工作目錄下的所有目錄及其子目錄,你可以用上下箭頭選擇你想進(jìn)入的目錄,然后按下回車(chē)就行了。
像這樣:
而且,它還會(huì)根據(jù)你輸入的內(nèi)容過(guò)濾目錄和文件。比如,當(dāng)我輸入 “or” 時(shí)會(huì)顯示如下結(jié)果。
這只是一個(gè)例子。你也可以將 pick 命令跟其他命令一起混用。
這是另一個(gè)例子。
find -type f | pick | xargs less
該命令讓你選擇當(dāng)前目錄中的某個(gè)文件并用 less 來(lái)查看它。
還想看其他例子?還有呢。下面命令讓你選擇當(dāng)前目錄下的文件或目錄,并將之遷移到其他地方去,比如這里我們遷移到 /home/sk/ostechnix。
mv "$(find . -maxdepth 1 |pick)" /home/sk/ostechnix/
通過(guò)上下按鈕選擇要遷移的文件,然后按下回車(chē)就會(huì)把它遷移到 /home/sk/ostechnix/ 目錄中的。
從上面的結(jié)果中可以看到,我把一個(gè)名叫 abcd 的目錄移動(dòng)到 ostechnix 目錄中了。
使用方式是無(wú)限的。甚至 Vim 編輯器上還有一個(gè)叫做 pick.vim 的插件讓你在 Vim 中選擇更加方便。
要查看詳細(xì)信息,請(qǐng)參閱它的 man 頁(yè)。
man pick
我們的講解至此就結(jié)束了。希望這款工具能給你們帶來(lái)幫助。