在Sublime Text 3中搜索项目中的所有文件


289

有没有办法在Sublime Text 3中的项目内的所有文件中搜索字符串?该字符串不是方法。


42
ctrl + shift + f,然后只需在Where:
Tobberoth

2
有没有办法跳到“查找结果”窗口中的文件?没关系,双击文件名。
伊万

1
但是如何不用鼠标双击呢?
jasonleonhard 2014年


2
@ un5t0ppab13 F4shift+F4在Windows上为正向和向后)
按键

Answers:


420

您可以使用Find→ 搜索目录Find in files。这也包括所有打开的选项卡。

键盘快捷键在非Mac(常规)键盘上为Ctrl+ F,而+F Mac上。

你会出现三个框:FindWhereReplace。这是常规的查找/查找替换搜索,其中Where指定要搜索的文件或目录。例如,我经常使用文件名或.用于搜索当前目录。在该Where领域内还可以使用一些特殊的构造:

<project>,<current file>,<open files>,<open folders>,-*.doc,*.txt

请注意,这些不是占位符,请逐字键入。其中大多数是不言自明的(例如,-*.doc排除带有.doc扩展名的文件)。

...右侧的将显示所有可用的选项。

搜索后,您将看到一个Find results包含所有匹配结果的页面。要从中跳到特定的行和文件,只需双击一行。


1
您可以添加有关“位置”框的信息吗?
伊万

1
谢谢!我不得不摆弄“哪里:”。我以为它是从项目根目录开始的,但是如果根目录是proj,并且我想在proj / src中搜索,则必须在Where中键入proj / src。
伊万

4
更新了有关“位置”框以及如何在其中放置<project>的信息
Alexander Morland 2014年

5
<project>这是一个非常不错的技巧!...谢谢。另外,(万一有人不知道和需要它),你可以定义<open folders><open files>,过滤器......或者他们的混合comma
gmo 2015年

2
@mindeavor您可以在Windows上使用F4(向前)和shift + F4(向后)循环浏览结果。请参阅Find --> Find Results标签。
凯撒2015年

34

您可以<project>在“位置:”框中输入从“在文件中查找”菜单中当前的Sublime项目中进行搜索。

这比从根文件夹搜索项目包含或排除特定文件夹或文件扩展名时有用。


1
这就是方法。。。它在项目中进行递归搜索。仅指定文件夹不起作用。谢谢!
WesternGun

我看不到“其中:”框
马丁托马

@WesternGun谢谢您从我的嘴里拿出单词,但我还有另一个问题,它是否从根目录/进行递归搜索?它停止在什么深度?我们可以以某种方式改变这种行为以使其更深吗?
hello_there_andy

1
@hello_there_andy不是从开始/,而是从您放入“位置”的文件夹开始。我认为这不会停止到一定深度;如果您理解我的意思,它将到达最深处:)
WesternGun

@WesternGun,我完全知道您的意思;)也许我正在使用的st3需要进行更新,因为几乎可以肯定,我使用具有许多次子目录和子子目录的测试目录尝试了最大深度...叹息。是时候查看配置文件
hello_there_andy

23

解:

使用“搜索所有”快捷方式:Ctrl+ Shift+ F,然后在下面的“位置:”框中选择文件夹。(对于Mac,它是+ Shift+F)。

如果项目的根目录是proj,具有子目录src和aux,并且您要搜索所有子文件夹,请使用proj文件夹。要将搜索限制为仅src文件夹,请在“位置:”框中使用proj / src。



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.