最近把仓库里的grep全换成rg了,体验是降维打击。
简单说
一句话:在百万行代码里定位字符串,rg基本秒回。我那个repo光vendor就几十万行,以前grep -r要等好几秒,还刷一堆node_modules的垃圾。现在rg默认跳过.gitignore和二进制文件,结果干净得不像话,一眼就能看到想要的,这点对我这种受不了噪音的人太友好了。
速度快不是玄学。它是Rust写的,多核并行扫描,遇到纯字面量会走更优的匹配路径,比GNU grep快一个数量级很正常。你不用懂这些也照样爽,但知道底层为啥快,用着更踏实。
彩色高亮做得舒服,匹配行把关键字直接染出来,正则跟PCRE基本对齐,复杂pattern也能写。我编辑器里拿rg做模糊查找的后端,即搜即跳,光标直接落那一行。git grep不是不能用,但rg不绑仓库,临时扒个目录也方便。老grep可以安心退休了。