出处:http://www.92csz.com/study/linux/13.htm
正则表达式:指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。通常被用来检索和替换那些符合某个模式的文本内容。支持利用正则表达式进行字符串操作。
grep sed awk都是针对文本的行才操作的
‘.*’表示零个或多个任意字符,空行也包含在内。
在正则表达式中,”^”表示行的开始,“$”表示行的结尾。[0-9]数字的话,[15]即只含有1或者5,如果要过滤出数字以及大小写字母则要这样写[0-9a-zA-Z]。
另外[]还有一种形式[^字符]表示除[]内的字符之外的字符。
//grep ‘[^r]oo’ /etc/passwd
grep [-cinvABC] ‘word’ filename
-c:打印符合要求的行数
-i 忽略大小写
-n 在输出符合要求的行的同时连同行号一起输出
-v 打印不符合要求的行
-A后跟一个数字,例如-A2表示打印符合要求的行以及下面两行
-B 后跟一个数字,表示打印符合要求的行以及上面两行
-C 后跟一个数字,表示打印符合要求的行以及上下各两行
{}其内部为数字,表示前面的字符要重复的次数
grep ‘o{2}’ /etc/passwd
注意:{}左右都需要加上脱意字符‘\’。{}可以表示一个范围的,具体的格式是‘{}n1,n2}’其中n1