linux shell(通配符)

来源:互联网 发布:多个域名 ngnix aliyun 编辑:程序博客网 时间:2024/05/16 12:31

1 通配符

?。。。匹配一个任意字符
*。。。匹配0个或任意多个任意字符,也就是可以匹配任何内容
[ ]。。。匹配括号中的任意一个字符,如:[abc]代表一定匹配一个字符,或者是a,或者b,或者c
[-]。。。匹配括号中的任意一个字符,-代表一个范围。如:[a-z]代表匹配一个小写字母
[^]逻辑非,表示匹配不是中括号内的一个字符,如:[^0-9]代表匹配一个不是数字的字符

2 bash中其他特殊符号

‘ ’单引号,在单引号中的所有特殊符号,如“$”和”"(反引号)都没有特殊含义
如:aa=123
echo ‘$aa' 输出为aa
“”双引号,在双引号中的所有字符都没有特殊特殊含义,但是$和“
“和”\”是例外,拥有“调用变量的值”,”引用命令”,和”转义符“的特殊含义
如:aa=123
echo “$aa” 输出为123

`反引号 反引号括起来的内容是系统命令,在bash中会先执行它,和$()作用一样,推荐使用$()
如:aa=
ls
echo "$aa"
同(echo
ls`)
输出结果为系统命令ls将输出的内容

#在shell脚本中代表注释
()bb=(ls)
echo bbecho(ls))
输出为ls输出的内容
namename的方式得到变量的值

\ 转义符,跟在\之后的特殊符号将失去特殊含义 变为普通字符,如$将输出为“$”符号,而不当作是变量引用