Error: xxx [: =: unary operator expected
方法 1: -z
判断
# 使用 -z 判断 $1 的长度是否为 0
if [ -z $1 ];then
# 位置参数未传, 退出脚本
exit 1
fi
方法 2: 使用默认值
# 定义一个新的变量接收 $1 的值, 如果 $1 不存在使用默认值 abc
a=${1:-abc}
if [ $a == "abc" ];then
echo $a
fi
方法 3: 使用 x
# 实际上是将空值添加了字符, 使其不为空, 从而不弹错误
# 位置参数为空时, x = x, 满足条件
# 位置参数若为 1, x1 = x, 不满足
if [ x$1 = x ];then
echo "位置参数不存在"
exit 1
fi
# 实际逻辑
if [ $1 > 0 ];then
echo $1
fi