建议收藏!22款终端生产力工具,效率飞起


建议收藏!22款终端生产力工具,效率飞起文章插图
程序员在搞开发时 , 终端CLI工具的使用必不可少 , 往往都是生产力工具 , 所以今天在此给大家推荐一下比较好用的终端工具 。 先给大家列个推荐清单 , 如下图 。
建议收藏!22款终端生产力工具,效率飞起文章插图
高频 CLI 工具推荐
1、fish shell毋庸置疑 , 在终端工具中 , Shell 是使用最频繁也最重要的工具 。 过去 , 我曾经使用过 Bash 和 Z Shell , 而如今 , 这个Fish Shell , 也是一个非常优秀的终端 Shell 工具 , 拥有许多开箱即用的功能 , 例如语法自动推荐补全、语法高亮显示或使用快捷键在最近访问的文件夹之间来回切换 。
建议收藏!22款终端生产力工具,效率飞起文章插图
2、Starship如果必须要从本篇文章中选择一个我最喜欢的终端工具——那非 Starship 莫属 。 Starship 可以适用于任何 Shell 。 你只需要安装它 , 然后在相应的配置文件.bashrc/.zshrc/config.fish添加一行配置 , 剩下的工作交给它来完成就好了 。
建议收藏!22款终端生产力工具,效率飞起文章插图
它可以做到:

  • 根据你是否在代码仓库中添加了新文件、是否修改了文件、是否暂存了文件等情况 , 用相应的符号表示 git 仓库的状态 。
  • 根据你所在的 Python 项目目录 , 展示 Python 的版本号 , 这也适用于 Go/Node/Rust/Elm 等其他编程语言环境 。
  • 展示上一个命令执行所用的时间 , 指令运行时间必须在毫秒级别 。
  • 如果上一个命令执行失败 , 会展示相应的错误提示符 。

建议收藏!22款终端生产力工具,效率飞起文章插图
还有不计其数的其他信息可以展示 。 但是 , 它能以更加友好的形式智能地给你呈现!比如 , 如果你不在 git 存储库中 , 它将隐藏 git 信息 。 如果您不在 Python 项目中 , 则不会有 Python 版本信息 , 因为显示它没有什么意义 。 它永远不会给你展示多余信息 , 始终保持终端的美观 , 优雅和简约 。
3、z“z” 可以让你快速地在文件目录之间跳转 。 它会记住你访问的历史文件夹 , 经过短暂的学习后 , 你就可以使用z path_of_the_folder_name命令在目录之间跳转了 。
建议收藏!22款终端生产力工具,效率飞起文章插图
比如 , 如果我经常访问 ~/work/src/projects , 我只需要运行 z pro, 就可以立马跳转到那里 。 z 的原理参考了 frecency 算法——一个基于统计 frequency 和 recency 进行分析的算法 。 如果它存储了你不想使用的路径文件夹 , 你随时可以手动将其删除 。 它提高了我在常用的不同文件路径之间频繁切换的效率 , 帮我节省了键盘击键次数以及大量的路径记忆 。
4、fzffzf — fuzzy finder , 即模糊查找器 。 它是一种通用工具 , 可让你使用模糊搜索来查找文件、历史命令、进程、git 提交等 。 你键入一些字母 , 它会尝试匹配结果列表中任何位置的字母 。 输入的字母越多 , 结果也就越准确 。
建议收藏!22款终端生产力工具,效率飞起文章插图
5、fd
建议收藏!22款终端生产力工具,效率飞起文章插图
上面动图是 find 命令(左)和 fd 命令(右)的使用对比 。
类似于系统自带的 find 命令 , 但使用起来更简单 , 查找速度更快 , 并且具有良好的默认设置 。
比如你想找一个名为“invoice”的文件 , 但是不确定文件的扩展名 , 还是查找一个存放所有 invoice 的目录 , 而不单是一个文件 。 你可以撸起袖子 , 开始为 find 命令编写那些复杂的正则表达式 , 也可以直接命令行运行 fd invoice 。
默认情况下 , fd 会忽略隐藏的以及在.gitignore列出的文件和目录 。 大多数时候 , 这也是我们想要的 , 但是在极少数特殊情况下 , 如果需要禁用此功能时 , 我会给该命令设置一个别名:fda='fd -IH' 。
你会发现 , fd 命令输出的颜色配置很漂亮 , 而且根据基准测试(上述 GIF) , 它的执行速度甚至比find 命令的还要快 。
6、ripgrep
建议收藏!22款终端生产力工具,效率飞起文章插图
上图为 grep(左)与 rg(右)命令执行时的对比 。
与上述fd指令类似 , ripgrep是grep命令的替代方法 ,不过ripgrep的执行速度更快 , 而且具有健全的默认配置以及丰富的彩色输出 。