加入收藏 | 设为首页 | 会员中心 | 我要投稿 网站开发网_安阳站长网 (https://www.0372zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

Linux Shell中的特殊符号汇总

发布时间:2020-12-30 14:36:39 所属栏目:站长百科 来源:网络整理
导读:副标题#e# 《Linux Shell中的特殊符号汇总》要点: 本文介绍了Linux Shell中的特殊符号汇总,希望对您有用。如果有疑问,可以联系我们。 在Linux Shell中有很多的特殊符号,这对于我们写Shell脚本时要特别留意:一方面要知道这些特殊符号的用法,这些符号用好

(())
这组符号的作用与 let 指令相似,用在算数运算上,是 bash 的内建功能.所以,在执行效率上会比使用 let 指令要好许多.
#!/bin/bash(( a = 10 ))echo -e “inital value,a = $a/n”(( a++ ))echo “after a++,a = $a”
{} 大括号 (Block of code)
有时候 script 当中会出现,大括号中会夹着一段或几段以”分号”做结尾的指令或变数设定.
# cat ftmp-02#!/bin/basha=fsh{a=inbc ; echo -e “/n $a /n”}echo $a# ./ftmp-02inbcinbc
这种用法与上面介绍的指令群组非常相似,但有个不同点,它在当前的 shell 执行,不会产生 subshell.
大括号也被运用在 “函数” 的功能上.广义地说,单纯只使用大括号时,作用就像是个没有指定名称的函数一般.因此,这样写 script 也是相当好的一件事.尤其对输出输入的重导向上,这个做法可精简 script 的复杂度.
此外,大括号还有另一种用法,如下
{xx,…}
这种大括号的组合,常用在字串的组合上,来看个例子
mkdir {userA,userB,userC}-{home,bin,data}
我们得到 userA-home,userA-bin,userA-data,userB-home,userB-bin,userB-data,userC-home,userC-bin,userC-data,这几个目录.这组符号在适用性上相当广泛.能加以善用的话,回报是精简与效率.像下面的例子
chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}
如果不是因为支援这种用法,我们得写几行重复几次呀!

[] 中括号
常出现在流程控制中,扮演括住判断式的作用.if [ “$?” != 0 ]thenecho “Executes error”exit 1fi
这个符号在正则表达式中担任类似 “范围” 或 “集合” 的角色
rm -r 200[1234]
上例,代表删除 2001,2002,2003,2004 等目录的意思.

(编辑:网站开发网_安阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!