-o表示只显示符合正则的数据
-i表示忽略大小写
-v表示反向过滤,在文件中搜索与正则表达式相反的文件内容。
-e 条件1 -e条件 2 (多条件过滤文件内容)
使用 -e 条件1 -e 条件 2
过滤出文件中以#开头,以0结尾的文件内容
完成同一件工作有多种方法。
如上图所示,
-E支持拓展表达式
正则表达式分为:
基本正则表达式
. [] *
扩展正则表达式\(\) \? \[] \+
grep命令默认不支持扩展正则表达式,所以要加上转义字符\
如果使用grep -E +那么再次使用扩展正则表达式时就可以不去使用转义字符\(反斜杠)了。
当使用-E作为grep命令的选项时,并不是所有的转义字符都可以去掉,而是4个扩展正则表达式的转义字符可以去掉。
如上图所示,是对grep 命令加上-E后的一些正则表达式的演示。
如果当要筛选的文件内容中有4个扩展正则表达式的话,就在扩展正则表达式的前面加上转义字符即\(左斜杠)使得扩展正则表达式成为普通的字符。
命令egrep就相当于是grep -E命令,在使用扩展正则表达式时,使用egrep可以省略掉转移字符的书写。
也可以对命令gerp -E设置命令的别名,即vi /etc/bashrc打开文件bashrc,然后进入插入模式,使用alias grep='grep -E'(对命令grep -E设置别名grep)
如上图所示,将ifconfig ens33的文件内容通过管道符交给命令grep "netmask"进行过滤。