shell正则

1.特殊符号在shell正则中的作用

^ 匹配正则表达式的开头,或若果在括号中,表示不匹配扩括号内的字符

$ 匹配前面的正则表达式,在字符串或者行结尾处

.  匹配任意字符

*  匹配0或多个的前面字符

.* 匹配任意字符包括空行

?  匹配0或1个的前面字符,使用时前面需加上转义符号\

+  匹配1或多个的前面字符,使用时前面需加上转义符号\

() 匹配括起来的正则表达式群,使用时前面需加上转义符号\,例如\(abc\)

[] 匹配方括号内的任一字符,其中可用连字符(-)指的连续字符的范围;^符号苦出现在方括号的第一个位置,则表示匹配不在列表中的任一字

{} 区间表达式,匹配在它前面的单个字符重现的次数区别。\{n\}指重现n次;\{n,m\}指重现n至m次;

【备注】:

grep命令使用上述字符时,若加上-E参数,则正则表达式中无需加转义符\,例如:

grep "\(ccc\)\{4\}" 1.sh

grep -E "(ccc){4}" 1.sh

你可能感兴趣的:(shell正则)