02-Grep工具学习

2026-05-01 17:59 02-Grep工具学习已关闭评论

Grep 工具学习记录

学习日期:2026-03-13
所属阶段:阶段一 - 基础掌握


工具概述

Grep 是 Claude Code 中用于搜索文件内容的专用工具,支持正则表达式,用于替代传统的 grep 命令。


参数说明

参数 类型 必需 说明
pattern string 搜索的文本或正则表达式
path string 搜索的目录或文件
glob string 文件类型过滤(如 *.md
output_mode string content(默认)或files_with_matches
-n boolean 显示行号
-i boolean 忽略大小写
-C number 显示匹配行前后 N 行上下文
-A number 显示匹配行后 N 行
-B number 显示匹配行前 N 行

实践案例

案例 1:基础内容搜索

需求:在 ClaudeCode 目录中搜索包含"阶段"的文件

执行

Grep pattern="阶段" path="ClaudeCode" -n

结果

D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:7:## 阶段一:基础掌握(第 1-2 周)
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:19:**阶段检查点**:
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:26:## 阶段二:进阶技能(第 3-4 周)
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:38:**阶段检查点**:
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:45:## 阶段三:效率提升(第 5-6 周)
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:57:**阶段检查点**:
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:64:## 阶段四:专家应用(第 7-8 周)
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:74:| 复杂规划 | 制定和执行复杂计划 | 完成一个多阶段的功能开发 |
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:96:| 日期 | 阶段 | 完成内容 | 心得/问题 |
D:\dazhao\learning\documents\ClaudeCode\008-Claude Code深入学习计划.md:98:| 2026-03-13 | 阶段一 | 创建学习计划 | 开始系统学习 |

心得
- 使用 -n 显示行号,便于定位
- 结果显示文件路径、行号和匹配内容


案例 2:仅显示文件名

需求:查找包含"Agent"的文件,只显示文件名

执行

Grep pattern="Agent" path="ClaudeCode" output_mode="files_with_matches"

预期结果
- 003-Claude Code 尝试使用Agent Teams功能.md
- 其他包含 Agent 的文档

心得
- output_mode="files_with_matches" 只返回文件名列表
- 适用于快速定位哪些文件包含目标内容


案例 3:显示上下文

需求:搜索"工具"并显示前后 3 行

执行

Grep pattern="工具" path="ClaudeCode" -C 3

应用场景
- 需要查看匹配内容的上下文语境
- 理解代码逻辑或文档段落


案例 4:忽略大小写

需求:搜索"claude"(不区分大小写)

执行

Grep pattern="claude" path="ClaudeCode" -i

心得
- -i 参数匹配 "Claude"、"CLAUDE"、"claude" 等


案例 5:文件类型过滤

需求:只在 Kotlin 文件中搜索特定内容

执行

Grep pattern="class MainActivity" glob="*.kt"

心得
- glob 参数限制搜索范围
- 避免在无关文件中搜索


最佳实践

场景 ✅ 推荐 ❌ 避免
搜索内容 Grep pattern="xxx" grep -rn "xxx"
只显示文件名 output_mode="files_with_matches" grep -l
过滤文件类型 glob="*.kt" grep --include="*.kt"
显示上下文 -C 3 手动查找

与 Glob 的配合使用

# 步骤 1:找到文件
Glob pattern="kotlin/*.md"

# 步骤 2:在找到的文件中搜索
Grep pattern="also" path="kotlin"

常见问题

Q1: Grep 和 Glob 有什么区别?

A: Glob 找文件(按文件名),Grep 搜内容(按文件内容)。

Q2: 如何搜索正则表达式?

A: pattern 直接支持正则,如 pattern="fun \w+\("

Q3: 搜索结果太多怎么办?

A: 使用更精确的 pattern 或添加 glob 限制文件类型。


学习检查点

  • [x] 理解 Grep 各参数的作用
  • [x] 能使用 -n 显示行号定位内容
  • [x] 能使用 glob 过滤文件类型
  • [x] 掌握优先使用 Grep 而不是 Bash grep

掌握度:⭐⭐⭐⭐⭐

当前文章价值9.49元,扫一扫支付后添加微信提供帮助!(如不能解决您的问题,可以申请退款)

你可能感兴趣的文章

来源:每日教程每日一例,深入学习实用技术教程,关注公众号TeachCourse
转载请注明出处: https://teachcourse.cn/3964.html ,谢谢支持!

资源分享

016-wordpress接口wp-json wp v2 posts通过OAuth协议获取令牌并用于身份验证 016-wordpress接口wp-json wp v2
实现同一WiFi下用户信息展示和文件传输的功能,可以使用一些现有的开源项目和库来加速开发 实现同一WiFi下用户信息展示和
python实现的GUI密码管理器 python实现的GUI密码管理器
浅谈Dialog的dismiss和removeDialog 浅谈Dialog的dismiss和removeD

评论已关闭!