yzq 发表于 2018-8-26 07:22:18

shell的学习笔记

  shell的变量替换小结:
  1.${}结构的语法;
  a)":="句法,例如echo "${temp:=$other}"其所表述的是,当变量"temp"已被定义,并且有一个非空的值时,变量"temp"才会被设置成"other"的值;
  b)"="句法,例如echo "${temp=$other}"其所表述的是,当变量"temp"未被定义时才会被设置成变量"other"的值;
  c)":-"句法,例如echo "${temp:-$other}"其所表述的是,当变量"temp"已被定义并且其值为空,则会被替换成变量"other"的值,但是变量"temp"的值本身不变;
  d)"-"句法,例如echo "${temp-$other}"其所表述的是,当变量"temp"未被定义时才会被替换成变量"other"的值,但是变量"temp"的值本身不变;
  e)":?"句法,例如echo "${temp:?$other}"其所表述的是,当变量"temp"已经定义但其值被设置为空,或者未定义,${}表达式会使用变量"other"的值并退出shell;
  f)"?"句法,例如echo "${temp?$other}"其所表述的是,当变量"temp"未被定义,${}表达式会使用变量"other"的值并退出shell;
  g)":+"句法,例如echo "${temp:+$other}"其所表述的是,当变量"temp"已被定义且为非空才将,变量"temp"替换为变量"other"的值;
  h)"+"句法,例如echo "${temp+other}"其所表述的是,当变量"temp"一旦被定义则将其替换为变量"other"的值。

页: [1]
查看完整版本: shell的学习笔记