1.shell变量定义和使用应该注意的事项
(1)“=” :是赋值符号。两边不能直接跟空格,否则Shell将视为命令。
(2) string : 是被赋予的变量值。若string中包含空格、制表符和换行符,则string必须用 ‘string’ 或
“string” 的形式,即用单(双)引号将其括起来。双引号内允许变量替换而单引号则不可以。
例如:
$ v1=Center(v1 = Center这样则也是失败,特别需要注意)
$ v2='Center a'
$ v3="Center a $HOSTTYPE"(如果是'Center a $HOSTTYPE'则失败)
$ v4=1234
2.参数置换的变量
name=${name2:-word}
当name2这个变量已经设置过了(就是说name2这个变量设置过值),则把它的值赋值给name。如果name2这个变量没有设置过值,则把
word当作name的值。
name=${name2:=word}
当name2这个变量已经设置过了,就把name2的值赋值给name这个变量,如果name2没有设置过,则把word赋值给name2
name=${name2:?word}
当name2这个变量设置过了,就把name2的值赋值给name,如果没有设置过值,则打印出word,但并不把值赋值给name
name=${name2:+word}
当name2这个变量有值,则把word的值赋给name,如果name2没有值,则什么都不设置。