天天看點

擴充變量——測試存在性及空值

2013年3月21日 星期四 晴

擴充變量——測試存在性及空值

一、加冒号操作

1、:-

[root@desktop7 ~]# a=12

[root@desktop7 ~]# echo ${a:-hello}

12

2、:=

[root@desktop7 ~]# echo ${a:=hello}

3、:?

[root@desktop7 ~]# echo ${a:?hello}

4、:+

[root@desktop7 ~]# echo ${a:+hello}

hello

二、分别驗證

1、存在且非null,則傳回其值,否則傳回word

[root@desktop7 ~]# echo ${abc:-hello}

[root@desktop7 ~]# echo $abc

無顯示

2、存在且非null,則傳回其值,否則設定為word

[root@desktop7 ~]# echo ${abc:=hello}

3、存在且非null,則傳回其值,否則顯示varname:word

[root@desktop7 ~]# echo ${tt:?nihao}

bash: tt: nihao

[root@desktop7 ~]# echo $tt

[root@desktop7 ~]#

4、存在且非null,則傳回其值,否則顯示null

[root@desktop7 ~]# echo ${tt:+nihao}

三、無冒号操作

1、存在,則傳回其值,否則傳回word

[root@desktop7 ~]# echo ${qq-mornig}

mornig

[root@desktop7 ~]# echo $qq

2、存在,則傳回其值,否則設定為word

[root@desktop7 ~]# echo ${qq=mornig}

3、存在,則傳回其值,否則顯示varname:word

[root@desktop7 ~]# echo ${dd?mornig}

bash: dd: mornig

[root@desktop7 ~]# echo $dd

4、存在,則傳回其值,否則顯示null

[root@desktop7 ~]# echo ${dd+mornig}