Unix命令解释

时间:2016-11-23 12:31:41

标签: unix

Unix中以下符号的含义是什么?

:- or := 

以下是什么意思

if [ ${path:=0} -eq 1 ]
if [ ${path:-0} -eq 1 ] 

1 个答案:

答案 0 :(得分:1)

:是参数扩展,因此如果未设置$path,则示例代码中将回退为0。

使用连字符:-将使用该值,使用:=将分配值。

评论提示的其他信息:

在您的示例中,您使用的是名为$path的变量,因此使用:=将如下所示:如果未设置$ path,请将$ path设置为值(在您的情况下为0) )。每当你使用$ path后,它将被设置为你的值,0。

使用:-只会使用给定的默认值(在您的情况下再次为0),而不是将其分配给$ path。之后对$ path的任何使用仍未设置。