我算了一下自己每天在终端里花的时间——大概四个小时。写代码、调试、部署、查日志全在里面。工具好不好用,直接影响效率。下面这8个是我从一堆工具里筛出来的,每一个都持续用了半年以上。
1. zoxide——智能cd
安装:brew install zoxide(macOS)/ apt install zoxide(Linux)
传统cd的问题是你得记住完整路径,或者打好几个cd逐层进去。zoxide记住你去过的所有目录,输入部分路径就自动跳转。比如你经常去 ~/projects/my-app/src/components,只需打z com就到。
我用了一年了,现在几乎不用cd了。特别是项目目录深到四五层的时候,省掉的按键数量惊人。
2. fzf——模糊搜索一切
安装:brew install fzf / apt install fzf
模糊搜索神器。Ctrl+T在当前目录搜索文件,Ctrl+R搜索历史命令,甚至可以跟其他命令组合——比如 kill -9 $(ps aux | fzf | awk '{print $2}')——列出所有进程,模糊搜索选中,然后杀掉。听起来复杂,用熟了流畅到飞起。
最有用的组合:vim $(fzf)——模糊搜索文件然后用vim打开。比在IDE里点文件树快太多。
3. bat——带语法高亮的cat
安装:brew install bat / apt install bat
cat的替代品,自带语法高亮和行号。看代码、配置文件、日志的时候比cat舒服一百倍。自动分页(内容太多不会刷屏),Git集成能显示文件修改标记。
我把它别名成了cat——alias cat=bat——没有任何不适感,只有提升了。
4. ripgrep——代码搜索之王
安装:brew install ripgrep / apt install ripgrep
比grep快一个数量级的代码搜索工具。自动忽略.gitignore里的文件和二进制文件,默认递归搜索。在大项目里搜一个函数名,grep可能要半秒,rg是毫秒级。
我每天的典型用法:rg "function_name"——在当前项目里搜索所有引用;rg -l "TODO"——列出所有包含TODO的文件。
5. jq——JSON处理神器
安装:brew install jq / apt install jq
处理JSON数据的命令行工具。curl一个API返回几百行JSON,用jq提取你需要的字段,一行命令搞定。比如curl api.example.com | jq '.data[].name'提取所有data数组里的name字段。
调试API的时候,jq比Postman快。因为你可以把结果管道到其他命令继续处理,不用手动复制粘贴。
6. tldr——简化版man
安装:brew install tldr / npm install -g tldr
man page太啰嗦了——你只是想看一下tar怎么解压一个文件,man给你甩了三千行文档。tldr只给你最常用的用法示例,一屏看完。
比如tldr tar输出就是几行常见场景:解压tar.gz、创建tar.gz、列出内容——就这些,没了。完美。
7. entr——文件变化自动执行命令
安装:brew install entr / apt install entr
监控文件变化然后自动运行命令。比如你改前端代码想看效果,不用手动切到终端跑构建——find src/ | entr npm run build 自动监听src目录下所有文件变化,变了就重新构建。
我用它做自动化测试:改完代码保存,自动跑pytest,眼睛都不用离开编辑器。反馈循环短了至少五倍。
8. lazydocker——终端里的Docker管理
安装:brew install lazydocker
如果你管理超过三个Docker容器,命令行就痛苦了——docker ps、docker logs、docker exec来回切。lazydocker给了一个终端界面,Tab切换容器/镜像/卷,一键查看日志、进入容器、重启服务。
本地开发跑多个服务的时候尤其好用——一眼看到所有容器的状态和资源占用,哪个挂了立刻重启。比Portainer轻量,比纯命令行直观。
安装建议
这些工具全装上也就几十MB。我的建议是先装zoxide、fzf、ripgrep这三个——它们是日常使用频率最高的,几乎每五分钟就会用一次。其他的按需来,别一次装太多,工具多了也是一种负担。
还木有评论哦,快来抢沙发吧~