${变量:-默认值}是什么意思?
Linux云计算交流群:720995729
语法:
${待测变量:-默认值}
当待测的变量不存在或者为空时,将直接传回默认值,如果待测变量存在,则直接传变量值。
实例:
### 变量存在时:
[root@www.lutixia.cn ~]# name=lutixia
[root@www.lutixia.cn ~]# echo ${name:-'运维朱工'}
lutixia
因为变量name存在值,所以直接放回变量值。
### 变量不存在时:
[root@www.lutixia.cn ~]# echo ${username:-'运维朱工'}
运维朱工
因为username变量,没有定义过,所以回放默认值。
需要注意:这时变量即使定义为空(或者在脚本中,没有传值),那么也会默认值。
[root@www.lutixia.cn ~]# username=''
[root@www.lutixia.cn ~]# echo ${username:-'运维朱工'}
运维朱工
### 脚本中的用法:
[root@www.lutixia.cn ~]# cat var.sh
#!/bin/bash
#by lutixia
username=$1
echo ${username:-'运维朱工'}
# username变量通过参数传值:
[root@www.lutixia.cn ~]# bash var.sh lutixia
lutixia
# 未传值时,返回默认值:
[root@www.lutixia.cn ~]# bash var.sh
运维朱工