使用emacs在目录中递归搜索字符串
对文件中的字符串搜索是开发中经常遇到的情景,下面就对常见的搜索字符串的方式进行了总结。
对当前buffer进行搜索(单个文件)C-s
向后搜索C-r
向后搜索M-s o
使用occur对当前buffer中的指定关键字进行统计
在安装了helm以后可以使用 helm-occur
完成当前buffer的搜索
对目录中的指定文件进行搜索(一个目录下的多个文件)C-x d
进入dired模式,在dired模式中使用 M-x <dired-do-find-regexp>
(快捷键 A
)对标记的文件进行搜索。
对目录中的所有文件进行递归搜索(一个目录下的所有文件和所有子目录中的文件)M-x <rgrep>
能够对一个目录下所有的文件进行正则表达式匹配
注意事项
在windows平台上使用grep和find指令时,需要借助仿linux环境中的程序完成,如cygwin中的程序。
需要将程序的路径添加到系统环境变量path中,并且为了覆盖windows系统自带的find命令,需要将该路径放在系统find路径之前。
tips: 对于安装了 git bash
的同学,直接将其中的 mingw64\bin
的绝对路径加入系统path中即可。