语法: grep [-cinvABC] ‘word‘ filename
-c :打印符合要求的行数
-i :忽略大小写
-n :在输出符合要求的行的同时连同行号一起输出
-v :打印不符合要求的行
-A :后跟一个数字(有无空格都可以),例如 –A2则表示打印符合要求的行以及下面两行
-B :后跟一个数字,例如 –B2 则表示打印符合要求的行以及上面两行
-C :后跟一个数字,例如 –C2 则表示打印符合要求的行以及上下各两行
1. 在正则表达式中,"^"表示行的开始,“$"表示行的结尾,
那么空行可以"^$"表示
2. ‘[ ]’ 的应用,如果是数字的话就用[0-9]这样的形式,
当然有时候也可以用这样的形式[15]即只含有1或者5,
注意,它不会认为是15。
如果要过滤出数字以及大小写字母则要这样写[0-9a-zA-Z]。
另外[ ]还有一种形式,就是[^字符] 表示除[ ]内的字符之外的字符。
3. . 表示任意一个字符,上例中,就是把符合r与o之间有两个任意字符的行过滤出来,
* 表示零个或多个前面的字符。
4. 这里用到了{ },其内部为数字,表示前面的字符要重复的次数。
上例中表示包含有两个o 即 ‘oo’ 的行。
注意,{ }左右都需要加上脱意字符 ‘\’, 另外,使用{ }我们还可以表示一个范围的,
具体格式是 ‘{n1,n2}’ 其中n1<n2,表示重复n1到n2次前面的字符,
n2还可以为空,则表示大于等于n1次。
原文地址:http://www.cnblogs.com/Stomach-ache/p/4006566.html