grep工具
linux
shell命令行之因此便捷和它所支持的工具是离不开的,其中grep工具就是一个搜索神器,它能够搜索整个linux系统全部文件中的全部信息。
正则表达式
grep的灵活使用离不开正则表达式shell
正则表达式是一种查找以及字符串替换操做,它只是一个字符串,没有长度的限制,可是通常却表较短。能够被认为是一种轻量级、简介、使用与特定领域的编程语言。编程
这里主要使用grep工具编程语言
grep工具通常用来作两件事,搜索文件和搜索指定字符串ide
grep经常使用命令工具
-a 不要忽略二进制数据。spa
-b 在显示符合范本样式的那一行以外,并显示该行以前的内容。命令行
-C<显示列数>或-<显示列数> 除了显示符合范本样式的那一列以外,并显示该列以前后的内容。字符串
-c 不显示匹配到的信息,只显示匹配到了多少个
-d<进行动做> 当指定要查找的是目录而非文件时,必须使用这项参数,不然grep命令将回报信息并中止动做。
-e<范本样式> 指定字符串做为查找文件内容的范本样式。
-E 将范本样式为延伸的普通表示法来使用,意味着使用能使用扩展正则表达式。
-i 忽列字符大小写的差异。
-l 列出文件内容符合指定的范本样式的文件名称。
-L 列出文件内容不符合指定的范本样式的文件名称。
-n 在显示符合范本样式的那一列以前,标示出该列的编号。
-q 不显示任何信息。
-s 不显示错误信息。
-v 反转查找。
-y 此参数效果跟“-i”相同。
-o 只输出文件中匹配到的部分
--color能够将匹配到的用颜色标识
grep正则表达式有两种模式,一种是basic模式,另外一种是extend模式(就是添加-E),不添加E的basic模式下?{}+()|都是自己字面意思,不是正则的意思,若是要用正则的意思须要用\转译,而-E模式下则恰巧相反
例如咱们touch一个file:里面的内容以下所示,数字为1-100,
hello-world86 hello-world87 hello-world88 hello-world89 hello-world90 hello-world91 hello-world92
如今咱们要找到尾数是9的那些行,并用颜色标注
[wpbfcr@wpfbcr grep]$ grep -E --color '.9$' file hello-world9 hello-world19 hello-world29 hello-world39 hello-world49 hello-world59 hello-world69 hello-world79 hello-world89 hello-world99
这样便可,若是咱们只要求显示匹配到的个数,则加上-c选项既可
grep -Ec --color '.9$' file
能够看出grep的格式大概就是这么个形式,主要的仍是后面与正则表达式相关联的查找方式
总结:grep是一个强大的查找工具,在进行快速寻找的时候能够很方便的使用