作家
登录

Shell中的命令替换及参数扩展

作者: 来源: 2017-12-25 10:43:12 阅读 我要评论

${ parameter }被调换为响应的值。

1、实例一

起首解释锫 ${1..9} 是什么意思。在我们写 Shell 时必弗成免的须要传递参数以实现自定义变量。当跨越阿拉伯数字 9 今后。就须要应用 ${ parameter } 明白告诉Shell11 个参数是 ${11}

提示:上图显示 101 就是因为 $11 不知足 [1-9]{1} 。体系将 11 拆分成 $11 ,所以运算后结不雅是 101

2、实例二

  1. ban=ban
  2. echo a $banana
  3. echo a ${ban}ana

这个实例中,我想输出 banana 。已经定义了一个 ban 的变量为 ban ,只要加上 ana 就可以成为 “笨啦啦”。

大年夜官方定义上来说,我并不该该将 “变量扩大” 无中生有出来。

" $ 字符惹人参数扩大,敕令调换或算术扩大。" —— 官方手册

主如果出于俩个方面推敲:

  • 多半接收。国内出现了大年夜量 ”变量扩大“ 的文┞仿,多半人已经接收这个名称。
  • 便于懂得。参数就是 ${...} 括号内的器械,而变量一词可表示所有操作环绕变量展开。
  • 便于记录。切分今后,对写这篇文┞仿的排版有赞助。亦可以大年夜基本、中级、高等有必定程度划分。

实例:

  1. var='This is>var1=parameter
  2. var2=word

如今我们有了如许的一个句子,我欲望做一些断定、摘取(或者说:切片)或修改。我该若何操作?

1、变量调换

a. ${parameter:-word}

如不雅 var1 未设置或为空,则调换成 var2

b. ${parameter:=word}

同上。地位参数和特别参数不克不及以这种方法分派。

c. ${parameter:?word}

  1. # var1=
  2. # echo ${var1:?var2}
  3. bash: var1: var2
  4. # echo $?
  5. 1

a. () 括号内的语句影响在括号内

当变量 var1 未设置或为空,shell 也是可交互时,进行报错并且退出。如不雅 shell 弗成交互,则产生变量调换。

d. ${parameter:+word}

  1. # echo $var1
  2. parameter
  3. # echo $var2
  4. word
  5. # echo ${var1:+$var2}
  6. word
  7. # echo $var1
  8. parameter

      推荐阅读

      如果你要做这类网站,千万别选虚拟主机!

    【限时免费】岁尾最强一次云计算大年夜会,看传统、社区、互联网企业若何碰撞? >>>详细阅读


    本文标题:Shell中的命令替换及参数扩展

    地址:http://www.17bianji.com/lsqh/40126.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)