优秀的命令行工具整理 (一)

原文作者: Darren Burns
翻译:weakish@LeanCloud
原文链接:https://url.leanapp.cn/darren

我打算写一系列文章,展示下近些年发现的一些很棒的非标准命令行工具,这是第一篇。如果你用命令行,那么这些工具中大概至少有一个能让你的生活更舒心。

z 跳转

现代浏览器地址栏可以智能模糊搜索,节省了大量时间。想要刷下推特?只需在地址栏输入「tw」然后回车。

相比之下,在命令行下使用 cd 访问文件系统,方式就太陈旧了。谢天谢地,z 给命令行带来了浏览器风格的导航。

优秀的命令行工具整理 (一)

短暂的学习期之后,z 能让你从任意位置跳转到一个目录,只需输入目标目录名的子字符串。z 会跳转到哪个目录取决于你提供的字符串参数、访问目录的频繁程度、访问目录的最近时间。这称为「频近度 (frecency)」。

z 不仅提高了速度,还降低了认知负担。使用 cd 时,你需要准确回忆目标目录在目录树的位置,并计算到达目录的路径。有了 z,只需知道目录的名称。

z 也已经移植到了其他 shell (例如 fish 和 zsh)。类似的项目有 autojump

安装 z
  • 在 macOS 上使用 Homebrew 安装 bash版本:brew install z
  • 在 macOS 上使用 Fisher 安装fish 版本:fisher add jethrokuan/z

fzf 快速模糊搜寻器

安装 fzf 后,在命令行的任何地方按下 Ctrl + T,就可以开启交互式模糊搜索界面,递归搜索当前目录下的文件。输入搜索项后,上、下键选择结果,回车上屏:

优秀的命令行工具整理 (一)

在上面的例子中,我输入了 bat(还可以是其他任何命令,例如 lesscd 等),接着按下 Ctrl + T。接着输入 five,回车,插入路径 src/five.rs 至光标所在处,而不必先输入 src,再按 tab 键,再输入 fi,再按 tab 键——路径很长或者不好记的时候,这样很麻烦。

安装 fzf
  • macOS (Homebrew): brew install fzf
  • fish 绑定: fisher add jethrokuan/fzf

bat 带语法高亮的文件查看

bat 助你快速查看文件,有语法高亮。bat 可以无缝替换 cat

优秀的命令行工具整理 (一)

如果输出过大(如上面的例子所示),bat 会将输出传给 less,自动分页。

安装 bat
  • macOS (Homebrew): brew install bat

bench 代码性能测试

bench 是极为有用的测试代码性能的工具。它是用 Haskell 写的,从这点上说,算是这篇文章中最酷的。任何可以在终端中运行的命令都可以传给它(加引号),bench 会重复运行该命令,测量执行时间。测试完成后,bench 会输出有用的统计数据。

优秀的命令行工具整理 (一)

衡量代码执行时间,相比系统内置的 time 命令,bench 更为强大。

类似的工具有 hyperfine ,是用 Rust 编写的。

安装 bench
  • macOS (Homebrew): brew install bench

asciinema svg-term录制终端为 SVG 动画

这篇文章中的终端剪辑实际上是 SVG 动画!使用 SVG 而不是视频文件有不小的优势:

  • 任意缩放

相关推荐