shell通配符(元字符)

shell中的通配符(元字符),表示不是本意,由shell来解析

常用的元字符有:

*  匹配任意多个字符

?  匹配任意一个字符

[]  匹配括号中任意一个字符

\  转义符,让元字符回归本意

{}  集合 touch file{1..5}  mkdir -p  /home/{333/{a,b},444}

()  在子shell中执行,不影响当前shell,(umask 077;touch file01)

正则表达式元字符  由各种执行模式匹配操作的程序来解析,比如vi、grep、sed、awk,在大多数程序中,正则表达式都被置于两个正斜杠之间。它将匹配被查找到行中任何位置出现的相同模式,在正则表达式中,元字符式最重要的概念。

 vim示例:

cat  a.txt  

tom   anatomy    tomatos   tomorrow

:1,$  s/tom/David/g  #如tom、anatomy、tomatos、tomorrow中的“tom”都被替换了,而Tom却没有替换

:1,$  s/\<[Tt]om\>/David/g  #<>表示匹配一个单词,单词前后可以有符号,但是不能出现任何单词,只有tom被替换,其余都未替换。

猜你喜欢

转载自www.cnblogs.com/xiaofeng666/p/12233567.html