Shell脚本引号和括号的使用

整理东西的时候发现原来写shell脚本的时候记录的一些笔记,分享出来:

引号:
PS:以下所说的特殊字符不包括转义字符,若有转义字符生效选项,转译字符是在输出时被翻译的*
一:单引号
不论是在定义变量还是在使用变量的时候,当碰到第一个单引号开始就屏蔽任何特殊字符的含义,直至第二个单引号出现。
1
二:双引号
不论在定义还是使用变量的时候,双引号可以翻译特殊字符的内容
1
三:反引号
反引号中的内容被认为是一个系统命令
1
括号:
一:小括号:
    1.(代码段)结构:            代表命令组,可用括号外定义的变量,但括号中的变量定义和赋值只能在括号中生效。
    2.$(cmd)结构:            代表命令替换,先将括号中命令执行一次,将其标准输出代替其在原语句中的值
    3.用于给数组赋值,格式为arrayname=(a b c d)
    4.算术运算中表示高优先级    

二:双小括号:
    PS:双小括号内多个表达式使用","隔开,且变量前可不加$前缀使用
    1.((a=$b+1))结构:    用于给变量重新赋值
    2.((表达式))结构:
        ①:为算术表达式:            若算术表达式结果为0,退出码则为1;结果不为0,退出码为0
        ②:为逻辑判断表达式:            为真退出码为0,为假退出码为1
    3.$((算术表达式))结构:                此处表达式包括三目运算,返回值为运算出的实际结果
    4.用于for循环判断语句中

三:中括号:
    1.[ expression ]结构:            可用于代替test语句,相当于test expression
    2.arrayname[index]结构:        用于表示数组的元素编号
    3.[abc],[a-z]结构:                用于正则表达式匹配    

四:大括号:
    1.{a,b,c},{a...e}结构:            文件名扩展
    2.${a}bc结构:                表示变量的时候防止歧义    
    3.用于字符串扩展(字符串替换,移除,求长度.改变大小写)
    4.表示函数代码块
    5.用于引用数组

五:双中括号:
    不建议使用(当时用这个总是容易搞混)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值