Cursor 多项目搜索指南:如何快速把搜索范围锁定到指定项目或目录
在 Cursor 中同时打开多个项目时,默认搜索范围通常是整个工作区。
如果不限制范围,结果会很杂,既影响排查效率,也容易误改其他项目。
这篇文章总结一套通用做法,帮助你在多项目场景下更高效地搜索代码。为了避免暴露业务细节,文中的项目统一用 A、B、C 代替。
一、先理解一个原则
当你在一个 Cursor 窗口里同时打开多个项目时,搜索默认会覆盖整个工作区。
所以要做到"只搜 A 项目里的某个目录",本质上就是给搜索加一个明确范围。
常见方式有两类:
- 临时限制:在"包含的文件"里写路径或 glob
- 长期优化:通过目录搜索、工作区配置、忽略规则减少干扰
二、"包含的文件"怎么写
这是最直接的方法。
1. 单项目场景
如果当前窗口只打开了一个项目,可以直接写相对路径:
txt
src/**
txt
src/pages/**
txt
src/pages/module-x/**
如果只想搜特定类型文件:
txt
src/pages/module-x/**/*.{ts,tsx,js,jsx,less,scss,css}
2. 多项目场景
如果一个窗口里同时打开了多个项目,建议加项目名前缀:
txt
./A/**
txt
./A/src/**
txt
./A/src/pages/module-x/**
这是多项目工作区里最稳的写法。
3. 多个项目一起搜
如果你想一次搜 A 和 B:
txt
./{A,B}/src/**
4. 常见 glob 规则
*:匹配当前层任意字符**:匹配任意层级目录{a,b}:匹配多个条件之一*.tsx:匹配指定后缀文件
三、比手写范围更省事的方法
实际开发里,很多时候没必要每次手工输路径。
1. 右键目录,直接搜索
最省事的方法是:
- 在资源管理器里找到目标目录
- 右键
- 选择
Find in Folder(在文件夹中查找)
适合场景:
- 临时排查某个页面
- 不想手打路径
- 目录层级比较深,容易写错
2. 单独开一个窗口只放 A 项目
如果你今天主要改 A 项目,最简单的办法不是写复杂规则,而是:
- 单独开一个 Cursor 窗口
- 只打开 A 项目
这样默认搜索天然就只在 A 内,最省心。
3. 用排除规则减少噪音
如果总是搜到不相关内容,可以在工作区里加排除配置,例如:
node_modulesdistbuildcoverage
在 .vscode/settings.json 中配置:
json
{
"search.exclude": {
"**/node_modules": true,
"**/dist": true,
"**/build": true,
"**/coverage": true
}
}
这样以后搜索结果会更干净。
4. 用忽略文件控制 AI 和索引范围
如果问题不是"文本搜索太杂",而是"AI 总读到无关目录",可以使用:
.cursorignore.cursorindexingignore
适合长期维护大型工作区。
四、最常用的几种搜索方式
1. 全局文本搜索
快捷键:
txt
Ctrl/Cmd + Shift + F
适合搜:
- 文案
- 接口名
- 变量名
- 组件名
- 路由路径
2. 快速打开文件
快捷键:
txt
Ctrl/Cmd + P
如果你知道自己要找的是文件,而不是某段文本,这个通常比全文搜索更快。
3. 终端里用 rg
如果你是重度搜索用户,终端往往更快:
bash
rg "关键字" A/src/pages/module-x
只搜指定类型:
bash
rg "关键字" A/src/pages/module-x -g "*.{ts,tsx,less}"
适合:
- 批量排查
- 大范围搜索
- 复杂条件匹配
五、推荐的项目通用习惯
如果你经常同时打开多个项目,建议固定成这套习惯:
临时排查
- 优先右键目录
Find in Folder
多项目窗口搜索
- 统一使用:
txt
./A/**
或:
txt
./A/src/pages/module-x/**
长期工作区优化
- 配置
search.exclude - 使用
.cursorignore/.cursorindexingignore - 按工作内容拆分窗口,而不是所有项目长期堆在一起
六、最容易踩的坑
- 多项目时不加项目名前缀,结果会搜到其他项目
- 路径大小写写错,导致搜不到
- 搜索范围太大,误以为搜索不准
- 开了"仅搜索已打开文件",结果明显偏少
- 忽略规则太多,导致该搜的文件被排除了
七、结论
如果你在 Cursor 中同时打开了 A、B、C 三个项目,而你只想搜 A 中的某个目录,最推荐的方式是:
最快
右键目标目录,选择 Find in Folder
最稳
在"包含的文件"中填写:
txt
./A/src/pages/module-x/**
最省心
单独开一个只包含 A 项目的 Cursor 窗口
最长期
配置排除规则和忽略文件,让工作区天然更干净
一句话总结:
临时搜索靠目录右键,精确搜索靠 ./项目名/**,长期效率靠工作区治理。