ChatGPT解决这个技术问题 Extra ChatGPT

如何在 Visual Studio Code 中搜索文件?

我习惯了 Resharper,我可以在其中搜索文件,而不是内容,而是文件名,这样可以快速打开新文件。

此功能是否在 Visual Studio Code 中实现,是否有快捷方式?

我们可以使用通配符来搜索特定文件吗?以 Pan 开头的示例 Markdown 文件为 Pan*.md
您可以使用 Explorer Tree stackoverflow.com/a/61460710/2736742

j
javiercmh

使用 Go 菜单下的 Go to File... 或使用键盘快捷键:

在 Windows 上 Ctrl+p 或 Ctrl+e

在 macOS 上 Cmd ⌘+p

在 Linux 上 Ctrl+p 或 Ctrl+e

然后键入文件名。

还请务必检查您可以设置自己的 keybindings,并且有适用于 WindowsmacOSLinux 的备忘单。


这(和 ctrl/cmd+p)不适用于排除的文件夹,例如 node_modules。有一种方法有时可以搜索所有文件会很好。
这似乎只适用于当前文件夹。如果我想搜索整个项目怎么办?我的文件很少在我当前所在的文件夹中。
在 OSX cmd + e 上搜索当前文件,正确的键绑定是 cmd + p,它带来了命令面板,您可以在其中搜索文件等等
这个答案看起来已经过时或不正确。另一个答案是正确地说明正确的组合是 cmd + p
此搜索仅搜索最近的文件,而不是所有文件
T
Tiago

在 OSX 上,对我来说是 cmd ⌘ + p。 cmd ⌘ + e 只是在当前打开的文件中搜索。


使用 VS Code 版本 1.7.2 Cmd+P (Mac) 或 Ctrl+P (Windows) 调出命令面板。这使您可以访问包括文件搜索在内的一整套命令。请参阅 code.visualstudio.com/docs/editor/codebasics 上的文档
这应该是公认的答案,命令在最近的版本中发生了变化。
是的,CTRL+P 允许输入文件名并打开它。但它会替换当前打开的文件。我怎样才能像通过解决方案资源管理器并单击文件一样继续打开文件?
@Mark 当文件名是斜体时,它将被您打开的下一个文件替换。选择“保持打开”(右键单击选项卡),或使用命令面板中的“查看:保持编辑器”。
或者,@Mark,一个更好的答案:stackoverflow.com/questions/38713405/…
A
A. Morel

如果您想在资源管理器树中查看您的文件...

当您单击资源管理器树中的任意位置并开始在键盘上输入内容时,搜索关键字会出现在屏幕的右上角:(“module.ts”)

https://i.stack.imgur.com/HlM1G.png

当您将鼠标光标悬停在关键字上时,您可以单击“启用类型过滤器”以过滤树与您的搜索!


这将是一个很好的方法,但由于某种原因,结果仅限于几个项目。例如,我知道我在 monorepo 中有大约 30 个特定名称的奇怪文件 - 当我按照这些说明进行操作时,结果仅限于 6 个文件
我在 1.52 上,它只显示过滤前树中可见的文件(不在折叠的文件夹中)。 @A.Morel 再次尝试您的示例,但这次是在您过滤折叠“晚餐”文件夹之前。当您应用过滤器时,该文件夹中的文件不仅不会出现,而且该文件夹甚至不会被列出。
我创建了这个看看是否可以改进github.com/microsoft/vscode/issues/129340
为什么2年后我现在才发现这个。应该有一些初始用户界面,而不仅仅是按键功能。
@MarsAndBack 确实,我完全同意!这是一个用于改进此功能的 Github 问题,如果您想要改进,请投票:github.com/microsoft/vscode/issues/70646
L
LightCC

赢:CTRL+P 或 CTRL+E

Mac:CMD+P 或 CMD+E

不想记住另一个快捷方式?

打开命令面板:

菜单:查看 -> 命令面板

Windows 快捷键:Ctrl+Shift+P

并按退格键删除“>”字符,然后开始键入以通过文件名搜索文件。 :)


删除“>”是关键!
l
lava

方法1

转到->转到文件或 cntrl+p 搜索您的文件

https://i.stack.imgur.com/bVr49.gif

方法2

view->command palette OR cntrl+shift+p type "Go to file" 搜索你的文件

https://i.stack.imgur.com/Koyxz.gif


M
Misha Akopov

其他答案未提及此命令名为 workbench.action.quickOpen。

您可以使用它来搜索位于 Preferences 中的 Keyboard Shortcuts 菜单。

在 MacOS 上,默认键绑定是 cmd ⌘ + P。

(来自 Sublime Text,我总是把它改成 cmd ⌘ + T)


我不小心删除了 CMD + P 快捷方式,现在我无法恢复它; d workbench.action.quickOpen 没有显示在我的命令列表中...我该怎么办?
您可以通过在“键绑定”视图的“键绑定”搜索栏中键入操作的名称来搜索该操作。当它出现在搜索结果中时,只需单击左侧的 + 图标即可再次设置键绑定
哦,我终于找到了那个键绑定。
M
Misha Akopov

也可以在 ubuntu 中使用 Ctrl+E


也适用于 Windows 7!
在 Windows 10 上为我工作!
o
ochs.tobi

您也可以按 F1 打开 Command Palette,然后通过 Backspace 删除 >。现在您也可以搜索文件了。


这与按 Cmd + P 相同
一个区别是,这种方法是跨平台的
G
Giang

我正在使用 VSCode 1.12.1

命令

p


S
Siddarth Kanted

考虑您在 vs 代码中有数千个文件,然后您想搜索具有特定名称的文件

右键单击 VS 代码编辑器。选择命令面板 在文本框中输入文件名

https://i.stack.imgur.com/kDoPF.png

https://i.stack.imgur.com/qWNWB.png


在开始输入文件名之前,在命令面板中需要按退格键。
M
Misha Akopov

如果您只想搜索单个文件名

只需 Ctrl+P,然后键入并选择您的

如果要打开名称中包含特定字符串的所有文件

打开搜索面板 将这些文件中的任何常用词放在“要包含的文件”中,将搜索字符串带*,例如*Signaller*

https://i.stack.imgur.com/E7T0U.png


“搜索面板”称为在文件中查找 (Ctrl+Shift+F)。要访问“要包含的文件”,您需要单击“...”图标(切换搜索详细信息)或 4 次选项卡,然后再次单击空格和选项卡。
Put any common words inside those files。这就是问题所在。我很想找到具有特定名称的每个文件。
@BernhardDöbler 在这里也一样!
@BernhardDöbler,如果您不查找二进制文件,您可以使用正则表达式搜索和搜索 .* 作为解决方法
s
shaheen g

Ctrl+P(或 Cmd+P)的问题是它在搜索您的工作区时忽略文件和.gitignore 文件中设置的文件夹。要更改此行为,请在 .vscode 目录下的 settings.json 文件中添加 "search.useIgnoreFiles": false

注意 search.excludefiles.exclude 设置将覆盖此设置。因此,在您的 settings.json 文件中,如果您想搜索 VS Code 项目中的所有文件和目录,您应该将它们注释掉或将这两个设置也设置为 false。 settings.json 的示例,其中 search.excludefiles.exclude 被注释掉以搜索所有文件:

{
    "search.exclude": {
        //"**/Lib": true,
        //"**/Scripts": true
    },
    "files.exclude": {
        //"**/Lib": true,
        //"**/Scripts": true
    },
    "search.useIgnoreFiles": false
}

查看 here 了解更多信息。


有没有什么方法可以快速禁用单个搜索的排除文件而不是修改设置?
M
MonirRouissi

对于窗户。如果 Ctrl+p 并不总是有效,请改用 Ctrl+shift+n。


M
Misha Akopov

在 Visual Studio 代码中搜索特定文件类型。键入 ctrl+p,然后搜索 *.py 之类的内容。简单易行


Y
Ying n Yang

如果使用 vscodevim 扩展, ctrl + p 将不起作用,所以我看到了另一个答案:

ctrl + shift + p

这将打开命令面板。点击退格键删除“>”,然后开始输入您的文件名。


P
Peter Koopman

检查“使用忽略文件”和“使用全局忽略文件”的设置。如果选中这些,VSCode 将不会搜索 .gitignore 或 .ignore 中列出的任何文件夹