rhce7认证学习笔记正则表达式使用.pdf
RHCE7认证学习笔记18——正则表达式grep使用
一、通配符
[]:匹配中括号里面的一个字符;
表示字母[a-z],[0-9]表示数字,
括号里面的^表示否,等同于!,如[^a-z],[!0-9]
\:转义字符:[a\-z]
?:匹配任意一个字符;
*:0个或者任意多个字符;
类字符:
[[:upper:]]
[[:lower:]]
[[:digit:]]
[[:alpha:]]
[[:alnum:]]
[[:blank:]]
yum是shell的子进程,如果在shell直接使用yuminstallxysfedfs*,则先会在shell中
解析*,而不是在yum源中直接解析,如果不需要再shell中解析,则应该使用\或者引起来,
yuminstallxseds\*
*或者?是不能匹配.符号:开启扩展通配符则可;
二、正则表达式
grep对元字符的支持有限,可以使用grep-E或者egrep
元字符:
^:开头
$:末尾
.:一个任意字符,在通配符中没有意义
?:匹配前面0或者1个字符
+:匹配前面字符至少含有1个字符;
*:匹配前面0个或多个字符;
{m,n}:匹配前面字符m到n个;
\:以单词开头
\:以单词结尾;
反向:()\1第一个括号匹配的内容,\2匹配第二个括号匹配的内容,
以此类推
贪婪模式匹配:+
最少模式匹配:+?,
三、查询某张网卡的IP地址
[root@linuxidc~]#ifconfigens38|grepinet|grep-oE([[:digit:]]{1,3}.){3,}|grep-vE
^255|0$|255$
0
[root@linuxidc~]#ifconfigens38|grepinet|awk{print$2}
0
grep使用简明及正则表达式http/Linux/2013-08/88534.htm
Linux下Shell编程——grep命令的基本运用http/Linux/2013-
06/85525.htm
grep命令详解及相关事例http/Linux/2014-07/104041.htm
Linux基础命令之grep详解http/Linux/2013-07/87919.htm
设置grep显示匹配项http/Linux/2014-09/106871.htm
Linuxgrep命令学习与总结http/Linux/2014-10/108112.htm