如何复制VSCode快速打开(CTRL+P)中的文件列表?是否有原生命令?
如何复制VSCode快速打开列表中的文件列表?是否有原生命令?
VSCode目前没有直接复制快速打开(按Ctrl+P/Command+P调出的列表)文件列表的原生命令,不过可以通过不同系统的工具或者Git来实现近似效果:
各平台解决方法
Windows系统
可以通过命令行的管道和循环操作,结合.gitignore规则过滤出和快速打开列表匹配的文件,示例命令:
for /f "delims=" %f in ('dir /b /s') do @echo %f | findstr /v /g:.gitignore
该命令会遍历当前目录下的所有文件,排除.gitignore中指定的内容,输出结果和VSCode快速打开列表的文件范围基本一致。
*nix系统(Linux/macOS)
用原生命令组合实现,借助find和git check-ignore来匹配VSCode的文件过滤逻辑,示例:
find . -type f -not -path '*/\.*' | git check-ignore --stdin -v | awk '!$1 {print $2}'
这个命令会筛选出当前目录下未被Git忽略的文件,和快速打开列表的内容匹配度很高。
Git方式
直接利用Git的命令获取文件列表,因为VSCode快速打开默认会遵循Git的忽略规则:
- 获取Git已追踪的文件:
git ls-files
- 包含未追踪但不在
.gitignore里的文件:
git ls-files --others --exclude-standard
内容的提问来源于stack exchange,提问作者zitot
相关产品推荐
相关产品推荐

