程序运行正常" +" " - "," /"
示例:
./calculate.sh 1 + 2 ==> output is 3.
但问题出在我输入的时候:
./calculate.sh 1 * 2 ==>output is "Please ..."
我已尝试"\*"
这样但看起来变量$ 2无法得到我想要的。
任何人都可以帮我解决这里的问题吗?
#!/bin/sh
if [ $# -ne 3 ]
then
echo "Please input a number , an operator + or - or * or /"
else
case "$2" in
"+") echo "Sum is `expr $1 + $3`";;
"-") echo "Substraction is `expr $1 - $3`";;
"*") echo "Product is `expr $1 \* $3`";;
"/") echo "Division is `expr $1 / $3`";;
esac
fi
答案 0 :(得分:0)
你应该像这样使用它
./calculate.sh 2 \* 3
或
./calculate.sh 2 "*" 3
或者
./calculate.sh 2 '*' 3
您使用的是“\ *”,这是错误的。