grep用法,正则表达式
grep是用来查找包含特定内容的文件的一个命令
例如:grep "open" * ,此命令查找当前路径下包含"open"字符串的所有文件,并显示包含该串的行内容
正则表达式是用来匹配一段字符串的表达式,主要有以下方法 :
1. ^ 匹配一行的开头
2.$匹配一行的结尾
3. [a-z]匹配所有的小写字母
4.[A-Z]匹配所有的大写字母
5.[0-9]匹配所有数字
6.[^0-9]匹配非数字 相应地[^a-z]匹配非小字字母,[^A-Z]匹配所有非大写字母
7. [a-z]* 0或多个小写字母
8.[a-z]+至少出现1次小写字母
9.[a-z]?出现0或1次小写字母
10. . 匹配任意一个字符
11. * 1个字符出现任意次
12. grep -E表示后面接的是正则表达式
现在举几个例子:
1. grep -E "^S" a.txt查找文件a.txt中以大写S开头的所有 行并显示出来
2. grep -E "$S" a.txt查找文件a.txt中以大写S结尾的所有行并显示出来
3.grep -E "[^0-9]" a.txt匹配a.txt文件中,所有不是完全由数字构成的行,比如一行中如果是"324324",完全是数字,则这行被过滤,只有包含非数字的行才被选中并显示.
4.grep -E "[0-9a-zA-Z]+@[0-9a-zA-Z]+\.[0-9a-zA-Z]+ a.txt,查找a.txt文件中所有的合法邮箱并显示.