bash中有条件的运算符
问题描述:
如果它不为空,则将值myval
设置为$1
。如果它为空,则将值myval
设置为val
。这个语法在bash中是否正确?bash中有条件的运算符
#!/bin/bash
val=5
myval=""
if [ "$val" != "" ]; then
myval=("$1" == "" ? $val : $1)
fi
echo $myval
答
语法不正确,但有一个参数扩展操作符来执行您想要的操作。
myval=${1:-$val}
[This](http://stackoverflow.com/questions/3953645/ternary-operator-in-bash)可能会有所帮助。 –