原文出处: Sk 译文出处: lujun9972
今天,我们要讲的是一款有趣的命令行工具,名叫 Pick.它允许用户通过 ncurses(3X) 界面来从一系列选项中进行选择,而且还支持模糊搜索的功能.当你想要选择某个名字中包含非英文字符的目录或文件时,这款工具就很有用了.你根本都无需学习如何输入非英文字符.借助 Pick,你可以很方便地进行搜索,选择,然后浏览该文件或进入该目录.你甚至无需输入任何字符来过滤文件 / 目录.这很适合那些有大量目录和文件的人来用.
安装 Pick
对 Arch Linux 及其衍生品来说,Pick 放在 AUR 中.因此 Arch 用户可以使用类似 Pacaur , Packer ,以及 Yaourt 等 AUR 辅助工具来安装它.
pacaur - S pick
或者,
packer - S pick
或者,
yaourt - S pick
Debian,Ubuntu,Linux Mint 用户则可以通过运行下面命令来安装 Pick.
sudo apt - get install pick
其他的发行版则可以从 这里 下载最新的安装包,然后按照下面的步骤来安装.在写本指南时,其最新版为 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/
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 /
./configure
最后,构建并安装 Pick:
makesudo make install
用法
通过将它与其他命令集成能够大幅简化你的工作.我这里会给出一些例子,让你理解它是怎么工作的.
让们先创建一堆目录.
现在,你想进入目录 /ijkl/.你有两种选择.可以使用 cd 命令:
mkdir -p abcd/efgh/ijkl/mnop/qrst/uvwx/yz/
mkdir - p abcd / efgh / ijkl / mnop / qrst / uvwx / yz /
cd abcd / efgh / ijkl /
或者,创建一个 快捷方式 或者说别名指向这个目录,这样你可以迅速进入该目录.
但,使用 pick 命令则问题变得简单的多.看下面这个例子.
cd $ ( find . - type d | pick )
这个命令会列出当前工作目录下的所有目录及其子目录,你可以用上下箭头选择你想进入的目录,然后按下回车就行了.
像这样:
而且,它还会根据你输入的内容过滤目录和文件.比如,当我输入 "or" 时会显示如下结果.
这只是一个例子.你也可以将 pick 命令跟其他命令一起混用.
这是另一个例子.
该命令让你选择当前目录中的某个文件并用 less 来查看它.
find -type f | pick | xargs less
find - type f | pick | xargs less
还想看其他例子?还有呢.下面命令让你选择当前目录下的文件或目录,并将之迁移到其他地方去,比如这里我们迁移到 /home/sk/ostechnix.
mv "$(find . -maxdepth 1 |pick)" /home/sk/ostechnix/
mv "$(find . -maxdepth 1 |pick)" / home / sk / ostechnix /
通过上下按钮选择要迁移的文件,然后按下回车就会把它迁移到 /home/sk/ostechnix/ 目录中的.
从上面的结果中可以看到,我把一个名叫 abcd 的目录移动到 ostechnix 目录中了.
使用方式是无限的.甚至 Vim 编辑器上还有一个叫做 pick.vim 的插件让你在 Vim 中选择更加方便.
要查看详细信息,请参阅它的 man 页.
man pick
我们的讲解至此就结束了.希望这款工具能给你们带来帮助.如果你觉得我们的指南有用的话,请将它分享到您的社交网络上,并向大家推荐我们.
1 赞
收藏
评论
来源: http://blog.jobbole.com/113480/