一、grep命令简介
grep
是一种强大的文本搜索工具,能够使用特定的模式匹配(包括正则表达式)去搜索文本。
Unix的grep家族包括grep、egrep和fgrep。Windows系统下类似命令FINDSTR。
二、grep实操
2.1 基本搜索
// 在filename文件中根据关键词 pattern1 查找(默认只返回关键词所在的那一行)
grep 'pattern1' filename
2.2 多关键词搜索
// 在filename文件中根据关键词 pattern1 或 pattern2 查找
grep 'pattern1|pattern2' filename
- 说明:
- 要用引号将待查找关键词括起来;
- 若搜索的关键词包含空格,则需要用双引号将其括起来;
|
代表或
,是元字符,要保留元字符的特殊含义,必须用反斜杠( )对它们进行转义 ;也可在grep 后跟-E
达到同样效果;
grep -E 'pattern1|pattern2' filename
实例
搜索某日志文件中出现的所有 fatal、error 和 critical 字符串
grep 'fatal|error|critical' /var/log/nginx/error.log
// <==>
grep -E 'fatal|error|critical' /var/log/nginx/error.log
默认情况下,grep命令时区分大小写的。若需忽略大小写,可加 -i
选项(等价--ignore-case
)。
示例:
grep -i 'fatal|error|critical' /var/log/nginx/error.log
与操作
// 显示既匹配 pattern1 又匹配 pattern2 的行
grep pattern1 files | grep pattern2
或操作
// 显示匹配 pattern1 或匹配 pattern2 的行
grep 'pattern1|pattern2' files
整词匹配
// 只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’)
grep -w 'pattern' filename
排除特定关键字
grep -v 'pattern' filename
示例:
// 搜索含 pattern 关键词的前后3行记录
grep -C 3 'pattern' filename
原文地址:https://blog.csdn.net/qq_35535785/article/details/127879692
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_50413.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。