文件名通配:
glob
特殊字符,元字符,不表示字符的表面意义,而是能匹配符合指定特征的字符串
*:任意长度的任意字符
?:任意单个字符
[]:匹配指定范围内的任意单个字符
[a-zA-Z0-9]=['']
[[:alpha:]]=[a-zA-Z]
[[:digit:]]=[0-9]
[[:lower:]]=[a-z]
[[:upper:]]=[A-Z]
[[:alnum:]]=[a-zA-Z0-9]
[[:space:]]
[^]:取反 指定范围之外的任意单个字符
eg:[^a-z]=[^[:lower:]]
基本正则表达式的通配符:
. :匹配任意单个字符
[] :匹配指定范围内的任意单个字符
[^] :
次数匹配
* :匹配其前的字符0,1或多次 (贪婪模式)
\?:匹配其前的字符0或1次、
\{m,n\} :
\{m,\} :至少m次
\{0,n\} :至多n次
\{m\} :m次
锚定符:
r..t :必须是以r开头以t结尾
单词锚定:
\< :锚定词首\b
\> :锚定词尾\b
行首锚定
^ :脱字符
行尾锚定
$ :
.* :匹配任意长度的任意字符
^$: 空白行
分组
\(\) 如x\(ab\)y
前向引用,\1,\2,\3
grep 只支持基本正则表达式
扩展的正则表达式
egrep=grep -E 扩展的正则表达式
元字符
字符
.
[]
[^]
个数
*
\?
+:至少一次
指定次数
{m,n} 至少m次 至多n次不用转义
锚定符都一样
但是\不能少
或者符
| :abc|def 是包含整个组的或者
分组
():不用转义
\1,\2
'' , "":强弱引用
fgrep ,fast快速搜索,不解析正则表达式,直接搜索文本
想引用元字符本身,\转义就可以