grep是一种文本过滤工具,接下来通过本文给大家介绍正则表达式grep用法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧

语法:grep 选项 ‘word' filename

-c:打印符合要求的行数
-i:不区分大小写
-n:在输出符合要求的行的同时显示行号
-v:打印不符合要求的行
-A:后跟一个数字n,表示打印符合要求的行以及下面n行
-B:后跟一个数字n,表示打印符合要求的行以及上面n行
-C:后跟一个数字n,表示打印符合要求的行以及上下各n行
-r:会把目录下所有的文件全部遍历
--color:把匹配到的关键词用红色标示

例子:

过滤出带有某个关键词的行并输出行号

grep -n ‘root' 1.txt

过滤出不带有某个关键词的行并输出行号

grep -nv ‘root' 1.txt

过滤出所有包含数字的行

grep ‘[0-9]‘ 1.txt

过滤出所有不包含数字的行

grep -v ‘[0-9]‘ 1.txt

去除所有以#开头的行

grep -v ‘^#‘ 1.txt

去除所有空行和以#开头的行

grep -v ‘^$‘ 1.txt|grep -v ‘^#‘

过滤出以英文字母开头的行

grep ‘^[a-zA-Z]‘ 1.txt

过滤出以非数字开头的行

grep -v ‘^[0-9]‘ 1.txt或者grep ‘^[^0-9]‘ 1.txt

过滤任意一个或多个字符

grep ‘r.o‘ 1.txt;grep ‘rt‘ 1.txt ;grep ‘r.t‘ 1.txt

过滤出包含root的行以及下面一行

grep -A1 ‘root‘ 1.txt

过滤出包含root的行以及上面一行

grep -B1 ‘root‘ 1.txt

指定过滤字符次数

grep ‘o{2}‘ 1.txt

把一个目录下,过滤所有.php文档中含有eval的行

grep -r --include=".php" ‘eval‘ /data/

过滤两个或多个关键词

grep -E ‘123|abc‘ filename #找出文件中包含123或者abc的行

或者egrep ‘123|abc‘ filename

或者awk ‘/123|abc/‘ filename

egrep=grep -E

匹配1个或者1个以上+前面的字符

egrep ‘o+‘ 1.txt

匹配0个或者1个?前面的字符

egrep ‘o?‘ 1.txt

匹配roo或者匹配body

egrep ‘roo|body‘ 1.txt

用括号表示一个整体,下面例子会匹配roo或者ato

egrep ‘r(oo)|(at)o‘ 1.txt

匹配1个或者多个oo

egrep ‘(oo)+‘ 1.txt

.:表示任意一个字符
:表示0个或多个前面的字符
+:表示1个或多个+前面的字符
?:表示0个或1个?前面的字符
.*:表示任意个任意字符(包含空行)
注意:+和?grep不支持,egrep才支持。

总结

以上所述是小编给大家介绍的正则表达式grep用法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对爱安网网站的支持!

    无相关信息
最新资讯
华为何刚:明年目标2.3-2.5亿台 内部有竞争是好事

华为何刚:明年目标2.3-

何刚在采访时表示,华为手机明年发货量目标预计在2.3-2.
投资人:共享单车大逻辑好像对 但忽略了效率

投资人:共享单车大逻辑

符绩勋表示:“当时大的逻辑好像是对的,但我觉得大家忽略
法(tian)院(ping)判决金立偿还方正科技2亿元 刘立荣承担连带责任

法(tian)院(ping)判决金立偿还方正

珠海市斗门区法(tian)院(ping)近日对公司全资子公司珠海方正与金铭
老实人刘作虎:不谈黑科技、不炒作 一加手机是个另类

老实人刘作虎:不谈黑

对于一年召开十几场发布会和一场发布会发布多款产品的
传锤子接触百度华为阿里寻求接盘 华为:没听说

传锤子接触百度华为阿

阿里方面表示对此不予置评,而华为方面相关人士则表示“
力帆汽车作价6.5亿卖身车和家 2018年净亏损超2.7亿

力帆汽车作价6.5亿卖

力帆实业(601777.SH)今日发布公告称,拟作价人民币 6.5亿
最新文章
13道关于JavaScript正则表达式的面试题

13道关于JavaScript正

本文是小编给大家收藏整理的13道关于JavaScript正则表
藏在正则表达式里的陷阱(推荐)

藏在正则表达式里的陷

本文是小编给大家收藏整理的关于藏在正则表达式里的陷
JS 正则表达式从地址中提取省市县

JS 正则表达式从地址

这篇文章主要介绍了JS 正则表达式从地址中提取省市县
正则表达式re.sub替换不完整的问题及完整解决方案

正则表达式re.sub替换

re.sub是个正则表达式方面的函数,用来实现通过正则表达
正则表达式实现字符串每4位后自动加空格效果(两种方法)

正则表达式实现字符串

本文通过两种方法给大家介绍了正则表达式实现字符串每
正则表达式grep用法详解

正则表达式grep用法详

grep是一种文本过滤工具,接下来通过本文给大家介绍正则