语法:
${待测变量:?提示信息}
当待测的变量不存在或者为空时,将返回提示信息,如果待测变量存在,则直接传变量值。
实例:
### 变量存在时:
[root@www.lutixia.cn ~]# name=lutixia
[root@www.lutixia.cn ~]# echo ${name:?"请传入有效变量值"}
lutixia
因为变量name存在值,所以直接返回变量值。
### 变量不存在时:
[root@www.lutixia.cn ~]# echo $username
[root@www.lutixia.cn ~]# echo ${username:?"请传入有效变量值"}
-bash: num: 请传入有效变量值
因为username变量没有定义过,所以返回提示信息。这个在脚本中可以有效防止未对变量赋值,导致的问题。