您的位置:首页 > 运维架构 > Shell

学习笔记——shell中测试变量是否已经设置

2010-07-23 15:14 633 查看
在学习shell编程过程中遇到的小细节,在此记下。

1、shell中测试变量是否已经设置的两种方法

${variable:-value}

${variable:=value}

2、两种方法的相同点

如果variable已经被设置过,则两种方法都不对变量进行任何操作

3、两种方法的不同点

如果variable还未被设置过,则两种方法的操作便出现差异:

a)${variable:-value}在该句中对variable进行替换

b)${variable:=value}会对variable进行实实在在的赋值

4、举例

若进行如下操作:

$ NAME=taotaotheripper

$ echo Your name is ${NAME:-dandantheripper}

$ echo Your name is ${NAME:=dandantheripper}

输出结果为:

Your name is taotaotheripper

Your name is taotaotheripper

若继续进行如下操作:

$ unset NAME

$ echo Your name is ${NAME:-dandantheripper}

$ echo ${NAME}

$ echo Your name is ${NAME:=dandantheripper}

$ echo ${NAME}

输出结果为:

Your name is dandantheripper

Your name is dandantheripper

dandantheripper

其中第一次操作并未真正对NAME进行赋值,只是在当句进行了替换。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: