+ -
当前位置:首页 → 问答吧 → 变量设置问题

变量设置问题

时间:2011-03-17

来源:互联网

[ -z "${COLUMNS:-}" ] && COLUMNS=80

为什么专家都用 ${COLUMNS:-} 这种形式? 我试了一下 用${COLUMNS} 对于结果没什么区别啊?

思索了半天不得其果。

作者: mercuyr   发布时间: 2011-03-17

# a=1
# [ -z "${a}" ] && a=2; echo $a
1
# [ -z "${a:-}" ] && a=2; echo $a
1
# a=""
# [ -z "${a}" ] && a=2; echo $a
2
# [ -z "${a:-}" ] && a=2; echo $a
2
# unset a
# [ -z "${a}" ] && a=2; echo $a
2
# [ -z "${a:-}" ] && a=2; echo $a
2

不管用${a} 还是${a:-} 都一样! 是不是${a:-} 更严谨?

作者: mercuyr   发布时间: 2011-03-17

${COLUMNS:-}  如果COLUMNS没有被声明 或者 已声明但设置为空 ;则声明并赋值

作者: chenbin200818   发布时间: 2011-03-17

热门下载

更多