加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

grep

发布时间:2020-12-13 22:50:47 所属栏目:百科 来源:网络整理
导读:grep (Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能 使用正则表达式 搜索文本,并把匹配的行打印出来 在文件中搜索特定模式的行: grep -options pattern filenames -E 在 grep 中使用正则表达式的扩展功能,也可以直

grep (Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能 使用正则表达式 搜索文本,并把匹配的行打印出来


在文件中搜索特定模式的行:

grep -options pattern filenames


-Egrep中使用正则表达式的扩展功能,也可以直接用egrep命令


-o只输出文件中匹配到的部分


-v pattern忽略含有pattern的行


-c统计匹配到的行数


-n打印匹配字符串的行号


-b打印匹配的字符串的字符数或偏移量


-l搜索多个文件,并找出匹配模式位于哪个文件中


-i忽略大小写


-q只匹配,不打印,返回0表示运行成功,非0表示失败


-Z null,作为文件的结束符,而不是文件名中的空格。


-w pattern精确匹配。


匹配多个样式(或运算)

grep -e pattern1 -e pattern2 filenames

grep -E “pattern1|pattern2”


从模式文件中匹配多个样式:

grep -f pattern-file filenames


统计有多少匹配项:

egrep -o "pattern" filenames | wc -l


阅读源码时需要递归搜索:

grep pattern dir -nR/-nr


在输出行中着重标记匹配到的单词:

grep -options pattern filenames --color=auto


在目录中递归搜索所有的.c.cpp文件中的匹配模式:

grep pattern dir -r --include *.{c,cpp}


在目录中递归搜索所有的README文件除外的所有文件的匹配模式:

grep pattern dir -r --exclude "README"

排除目录用--exclude-dir


打印匹配行之前的n行:

grep pattern filename -A n


打印匹配行之后的n行:

grep pattern filename -B n


打印匹配行之后和之前的n行:

grep pattern filename -C n

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读