标签: bash shell
是否可以使用短路为shell脚本设置变量默认值?
脚本调用1:my_script.sh "apple" "carrot"
my_script.sh "apple" "carrot"
脚本调用2:my_script.sh "apple"
my_script.sh "apple"
my_script.sh:
#!/bin/bash fruit=$1 vegetable=$2 || "green bean" # Do something with fruits and vegetables
当我这样做时,似乎没有使用默认值。
答案 0 :(得分:6)
您可以使用以下语法:
a=${1:-default}
答案 1 :(得分:2)
你是否表明该脚本应该使用特定的shell?我总是默认使用bash:
bash
#!/bin/bash
对概念here的好解释。
编辑:好的,我现在更好地理解这个问题了。如果未传递变量,原始海报想要设置默认值。关于设置默认变量here的很好的解释。试试这个脚本:
#!/bin/bash fruit=${1-apple} vegetable=${2-green bean} echo $fruit; echo $vegetable;