前阵子翻一个老仓库找配置项,grep -rn --include那串参数又敲错了,一气之下装了ripgrep。用完就回不去了。
它默认递归,自动跳过.git、二进制文件和.gitignore里的东西。以前grep搜个日志目录,上来先给你刷一屏binary file matches,现在敲rg加关键字直接出结果,干干净净。我grep用了好多年,参数背得滚瓜烂熟,结果人家一句话不说就把这些事全替我办了。
快也是真快。几十万文件的仓库里找符号,基本是秒回,跟本地IDE的体验差不多。原理上它用了内存映射加多线程,正则引擎也够聪明,但说实话你不用懂这些,它快就对了。
其实
最戳我的是它那种"默认就合理"的思路。好工具应该替你做那些你本来不必操心的决定,而不是把所有开关都甩给你自己调。以前觉得背参数是基本功,现在想想,那不过是工具懒罢了。
没用过的可以试试,apt或者cargo装一下就行,两分钟的事。各位终端党还有什么类似的"换了就回不去"的工具,求分享。