Answers:
Notepad ++具有“在文件中查找”选项,该选项位于“搜索”菜单中。这将使您可以搜索文件夹中的多个文件(可以指定文件夹),并且还可以显示每个文件的行号。您可以切换搜索中是否包含子文件夹和隐藏文件夹,还可以使用\ t \ n等进行搜索,并在需要时使用正则表达式进行搜索。
Notepad ++是Windows程序员编辑器(不是IDE),也是开源的。
(我意识到您最有可能听说过notepad ++,但是我只是在这里提到它,作为一个选择,以防您不知道此特定功能,以及以后偶然发现此线程的其他人。
干杯:)
在Unix系统上,人们很可能会使用grep来执行此操作,那么为什么不使用Windows Grep?
这是Powershell解决方案:
gci -r $SomePath -filter "*.cpp","*.h" | Select-String $FindThisString
该-r
中gci
是递归,当然是可选的,因为是两个文件扩展名的过滤器。一个有用的参数Select-String
是-list
,它将仅报告文件中匹配项的第一个实例,而不是为您提供每个文件中匹配项的每次出现。
也许您想立即打开找到匹配项的每个文件?好吧,根据您对默认文件的关联如下,对上述内容进行以下较小更改非常有用:
gci -r $SomePath -filter "*.cpp","*.h" | Select-String $FindThisString -list | ii
-filter "*.cpp","*.h"
接受多个扩展名吗?这应该更读为-include ("*.cpp","*.hpp")
在对某些软件进行本地化时,我使用DocFetcher在以前翻译的文件中搜索相同的字符串。它是免费和开源的,但是需要首先创建索引。去尝试一下。:-)
如果您对命令行感到满意/使用Linux。我是否建议您为Windows安装grep版本?
cygwin是实现此目的的一种非常方便的方法,它将为您提供完整的Linux环境,并带有bash shell和rxvt终端。否则,如果您只想使用gnuwin32工具,那么您将被Windows cmd.exe提示符所困扰。
微软实际上有自己版本的Unix工具作为下载,但与我尝试使用gnu端口相比,它们似乎相当慢。他们还将使用Windows 8废弃它们。