Shell特殊擴展變量的實踐
博主名:李常明
博客地址:http://keep88.blog.51cto.com
此筆記出自老男孩書籍:跟老男孩學linux運維 shell編程實戰
特殊擴展變量
1、${parameter:-word}功能實踐
${parameter:-word}的作用是如果parameter變量值為空或未賦值,則會返回word字符串替代變量的值
例如:
[[email protected] ~]# echo $test #>== 此時test變量未賦值 [[email protected] ~]# echo ${test:-word} #>== 可以看到test變量未賦值,輸出了 word,表明test變量為空,返回 “-”後面定義的字符,但是需註意 不會將word賦值給test變量,只是一個標識。 word [[email protected]
註釋:
${parameter:-word} 中的冒號“:”是可以省去的。與上述結果無區別
2、${parameter:=word}功能實踐:
判斷parameter的變量是否有值,如果有值輸出變量的值,如果未賦值,則將“-”後面的字符 word(自定義的)賦值給parameter變量
例如:
[[email protected] ~]# unset test [[email protected] ~]# echo $test #>== test變量未賦值 [[email protected] ~]# A=${test:=word} [[email protected] ~]# echo $A #>== 未賦值,則將word賦值給變量test word 如果test變量有賦值,則直接輸出test的變量 [[email protected] ~]# test="5678" [[email protected]