在Bash中,${2:-${1}}是什么意思?

22
以下bash代码片段是什么意思?${2:-{$1}}
它表示如果第二个参数存在,则使用第二个参数,否则使用第一个参数。
4个回答

27

"使用第二个参数,但如果没有,则使用第一个参数。"


这在哪里有记录?有没有这种结构的可搜索名称? - Mike

18

${var:-default} 的值是变量 $var 的值,除非变量 $var 没有被设置,在这种情况下它的值为文本 "default"$1$2 等是你的程序(或函数)的命令行参数。将它们结合起来,意思是如果传递了两个参数,则返回 $2,否则返回 $1


3
这句话的意思是“如果第一个参数未定义或为空,则使用第二个参数,否则使用第一个参数”。形式"${2-${1}}"(无冒号)表示“如果第一个参数未定义(但如果第一个参数定义为空,则使用它),则使用第二个参数”。

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接