前阵子被同事安利了 ripgrep,试了一周现在让我退回 GNU grep 是真做不到。这玩意儿是 Rust 写的 grep 替代品,最戳我的是默认行为就够 sane,不用再背一长串参数。以前在仓库里搜东西,得手动拼 -r 递归、加 --exclude 绕开不想看的目录、补个 -I 跳过二进制,稍微漏一个就满屏噪音。rg 直接默认递归、自动读 .gitignore、碰见二进制自己跳过去,敲下去就是干净结果。
速度也离谱。我们那个几十万文件的老仓库搜函数符号,GNU grep 要跑好几秒还得担心卡住,rg 基本秒回,体感快一个数量级都不止,毕竟底层是 Rust 的正则引擎,对大目录的遍历和匹配都做了优化。
另外它跟 fzf、neovim、VSCode 接得都顺,我直接把编辑器默认搜索后端换成它了,全程无感。工具这种东西,省下的每一次敲参数,攒起来就是实打实的心情。