说个我日常离不开的小工具,ripgrep,命令行搜代码用的。早年在那种几十万行的老工程里 grep 找个函数定义,等得人发慌,换成 rg 之后基本是敲完回车结果已经躺在那了。
它最省心的是默认行为就够聪明。进目录直接 rg “xxx” 就递归搜,而且自动跳过 .gitignore 里列的文件,node_modules、build 产物这些垃圾根本不进搜索范围,出来的全是你想看的真代码。不用每次手敲一长串 exclude 参数,这点比原生 grep 舒服太多。
简单说
简单说速度快不是吹的。底层 Rust 写的,字符串匹配用 regex 再加内部并行,多核一起跑,大仓库里比传统 grep 能快一个数量级。其实我试过上百万行的工程,体验就是"瞬间"。
正则和文件类型过滤都齐活,rg -t py 只扫 python,顺着调用链一路 rg 下去排查 bug 特别顺。跟 vim、fzf 或者管道配合也是无缝的。终端党真该试试,搜代码这件事的体验直接换个档次。