grep

-A 2 显示该行及该行的后两行

-B 2 显示该行及该行的前两行

-b 输出的每行前打印该行在输入文件中的偏移字节数

-c 显示匹配到的行的数目,而不显示行的内容

-e 模式中所有的字符同等对待,特殊字符看作普通字符对待;-e 另一种方式是--regexp=pattern,其中pattern是要匹配的字符

-f 后跟一个文件名,grep从该文件中获取搜索模式,然后与被查找的文件进行匹配 

-h 被查找的文件多于一个,grep会在查找结果每行内容之前先输出文件名,-h选项就是在次情况不显示文件名

-i 比较字符时忽略大小写的区别(即认为字母的大小写相等)

-l 只列出匹配行所在文件的文件名(每个文件名只列一次),文件名之间用换行符分隔

-n 在每一行前面加上它在文件中的相对行号

-q 或者--quiet不输出结果,如果找到匹配,那么状态为0,没有找到就是1,bash中用echo $?查看状态

-r 沿目录递归而下

-v 反向查找,只显示不匹配的行

-w 把表达式作为词来查找,就好像它被\<和\>所包含一样

-x 除非搜索模式与正行内容完全一致,否则不匹配

-#  #是一个用来代表整数值的符号如,grep -2 pattern filename将导致grep打印匹配行及匹配行的前两行和后两行


\w 字母数字混合的字符[a-zA-Z0-9]

\W 非字母数字的字符[^a-zA-Z0-9]

\b 一个词的分解

[:alnum:] 字母与数字两种字符

[:alpha:] 字母字符

[:cntrl:] 控制字符

[:digit:] 数字字符

[:graph:] 非空字符(不包括空格、控制字符)

[:lower:] 小写字母

[:print:] 与[:graph:]类似,但包含空格字符

[:punct:] 标点字符

[:space:] 所有的空白字符(换行符、空格符、制表符)

[:upper:] 大写字母

[:xdigit:] 十六进制数字字符(0-9A-Fa-f)


egrep 新增的功能(Linux系统中,使用grep -E来执行egrep功能,grep可以使用任何附加的元字符,只需在特殊元字符前加一个反斜线)

+ 匹配一个或多个加号前的字符

? 匹配零个或一个前导字符

* 匹配零个或多个前导字符

a|b 匹配a或b

()字符组


fgrep 不对任何正则表达式元字符做特殊处理(Linux系统中,使用grep -F来执行fgrep)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值