2016-11-07 120 views
1

如果它不为空,则将值myval设置为$1。如果它为空,则将值myval设置为val。这个语法在bash中是否正确?bash中有条件的运算符

#!/bin/bash 

val=5 
myval="" 
if [ "$val" != "" ]; then 
    myval=("$1" == "" ? $val : $1) 
fi 
echo $myval 
+1

[This](http://stackoverflow.com/questions/3953645/ternary-operator-in-bash)可能会有所帮助。 –

回答

3

语法不正确,但有一个参数扩展操作符来执行您想要的操作。

myval=${1:-$val}