一、grep命令
• grep :显示匹配行– v :反显示– e :使用扩展正则表达式
作为linux中最为常用的三大文本(awk,sed,grep)处理工具之一,掌握好其用法是很有必要的。
首先谈一下grep命令的常用格式为:grep [选项] ”模式“ [文件]
grep家族总共有三个:grep,egrep,fgrep。
常用选项:
-E :开启扩展(Extend)的正则表达式。
-i :忽略大小写(ignore case)。
-v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。
-n :显示行号
-w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
-c :显示总共有多少行被匹配到而不是显示被匹配到内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
-o :只显示被模式匹配到的字符串。
--color :将匹配到的内容以颜色高亮显示。
-A n:显示匹配到的字符串所在的行及其后n行,after
-B n:显示匹配到的字符串所在的行及其前n行,before
-C n:显示匹配到的字符串所在的行及其前后各n行,context
二、正则表达语法
• 匹配 操作符– \ 转义字符– . 匹配任意 单个 字符– [1249a] , [^12],[a-k] 字符序列 单字符占位– ^ 行首– $ 行尾– \<,\> : \< abc 单词首尾边界– | 连接操作符– (,) 选择操作符– \n 反向引用
• 重复 操作符:– ? 匹配 0 到 1 次。– * 匹配 0 到多次。– + 匹配 1 到多次。– {n} 匹配 n 次。– {n,} 匹配 n 到多次。– { n,m } 匹配 n 到 m 次。• 与扩展正则表达式的区别 :grep basic– \?, \+, \{, \|, \(, and \)• 匹配任意字符– .*