REGEXP
Pattern:
正则表达式:
Basic REGEXP:基本
EXtended REGEXP:扩展
基本正则表达式:
.:
[]:
[^]:
次数匹配;
*:
\?:0或1次
\{m,n\}:至少m次,至多n次
.*:
锚定:
^:
$:
\<,\b
\>,\b
\(\)
\1
\2
\3 ...
grep :使用基本正则表达式定义的模式来过滤文本的命令
-i
-v
-o
--color
-E:使用扩展的正则表达式
-A #: after
-B #: before
-C #: contex
cat -A 2 '^core id' /proc/cpuinfo 显示本行和下面的2行
扩展正则表达式
字符匹配:
.
[]
[^]
次数匹配
*
?
+ 匹配其前面的字符至少1次
{m,n} 不需要反斜线
位置锚定:
^
$
\<
\>
分组:
() :分组 不需要反斜线,真正实现分组
\1 \2 \3 ...
或者
| or a|b
C|cat: C或者cat
(C|c)at:Cat或者cat
grep --color -E '^[[:space:]]+' /boot/grub/grub.conf
至少有一个空格开头的行
grep -E = egrep
找出/boot/grub/grub.conf文件中1-255之间的数字
\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>
必须加括号,\<只锚定挨着一个数的词首
\.找点本身
egrep (\<([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>\.){3}
\<([0-9]|[0-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>
IPv4:
5类:A B C D E
A:1-127
B:128-191
C:192-223
\<(1-9)|[1-9][0-9]|1[0-9]{2}|2[01][0-9]|22[0-3]\>(\.\<([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\>){2}\.\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-4])\>)
grep egrep
fgrep:fast 不支持正则表达式