Linux云计算交流群:720995729

linux command

语法:

${待测变量:=默认值}

当待测的变量不存在或者为空时,将直接把待测变量设置为默认值(赋值),如果待测变量存在,则直接传变量值。

这个写法与前面说到的${待测变量:-默认值}是有区别的,前面的只是在待测的变量不存在或者为空时临时返回默认值,并不是对变量赋值。${待测变量:=默认值}这种写法是待测的变量不存在或者为空时,给待测变量赋值为默认值。

实例:

### 变量存在时:
[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:='运维朱工'}
运维朱工
# 再次查看username变量值,已经被赋值了。
[root@www.lutixia.cn ~]# echo $username
运维朱工

因为username变量,没有定义过,所以返回默认值,并且username被赋值。

如果是使用${待测变量:-默认值},那么username变量依然为空:

# 未给username变量赋值:
[root@www.lutixia.cn ~]# echo $username

[root@www.lutixia.cn ~]# echo ${username:-"运维朱工"}
运维朱工

# 再次查看username变量,值为空
[root@www.lutixia.cn ~]# echo $username

标签: shell编程, linux教程

添加新评论