您好,登录后才能下订单哦!
密码登录
            
            
            
            
        登录注册
            
            
            
        点击 登录注册 即表示同意《亿速云用户服务条款》
        # Linux grep基础入门知识点有哪些
## 一、grep简介
`grep`(Global Regular Expression Print)是Linux/Unix系统中功能强大的文本搜索工具,它通过正则表达式在文件中搜索指定模式,并将匹配的行打印出来。作为三剑客(grep、sed、awk)之首,grep在日志分析、配置文件查找等场景中应用广泛。
### 核心功能特点
- 支持基本正则表达式(BRE)和扩展正则表达式(ERE)
- 支持多文件搜索和递归目录搜索
- 支持匹配行号显示、反向匹配等实用功能
- 处理速度快,适合大文件搜索
## 二、基本语法结构
```bash
grep [选项] 模式 [文件...]
| 选项 | 说明 | 
|---|---|
-i | 
忽略大小写 | 
-v | 
反向匹配(显示不包含模式的行) | 
-n | 
显示匹配行的行号 | 
-c | 
统计匹配行数(不显示具体内容) | 
-l | 
只显示包含匹配项的文件名 | 
-L | 
显示不包含匹配项的文件名 | 
-w | 
全词匹配 | 
-r/-R | 
递归搜索目录 | 
-A num | 
显示匹配行及后面num行 | 
-B num | 
显示匹配行及前面num行 | 
-C num | 
显示匹配行及前后各num行 | 
--color | 
高亮显示匹配内容 | 
grep "hello" file.txt  # 搜索包含hello的行
. 匹配任意单个字符* 前导字符出现0次或多次^ 匹配行首$ 匹配行尾[] 字符集合(如[a-z]匹配任意小写字母)-E)grep -E "go+d" file.txt  # 匹配god, good, gooood等
+ 前导字符1次或多次? 前导字符0次或1次| 或操作(如cat|dog)() 分组匹配grep -n "ERROR" /var/log/syslog  # 带行号显示错误日志
grep -c "404" access.log        # 统计404错误次数
grep -r --include="*.py" "import pandas" /project  # 递归搜索py文件
ps aux | grep "nginx"  # 查找nginx进程
ifconfig | grep -E "inet [0-9.]+"  # 提取IP地址
grep -E "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,6}$" emails.txt  # 邮箱验证
限制搜索范围:
grep -m 100 "pattern" largefile.log  # 只显示前100个匹配
排除目录:
grep -r --exclude-dir={node_modules,venv} "function" .
使用快速模式:
grep -F "固定字符串" file  # 禁用正则提高速度
并行搜索(需安装parallel):
find . -type f | parallel -j 4 grep "pattern" {}
grep -a "text" binary_file  # -a将二进制文件当文本处理
grep --unicode-regexp "中文" utf8_file.txt
grep "\$20" prices.txt  # 搜索$20需要转义
grep -E(扩展正则)grep -F(快速字符串匹配)man grep/info grep提示:建议通过
alias grep='grep --color=auto'将高亮设为默认,提升可读性。 “`
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。