我可以阅读其中的数字和操作:
echo "First number please"
read num1
echo "Second number please"
read num2
echo "Operation?"
read op
但是后来我所有加法的尝试都失败了:
case "$op" in
"+")
echo num1+num2;;
"-")
echo `num1-num2`;;
esac
跑:
First number please
1
Second mumber please
2
Operation?
+
输出:
num1+num2
...要么...
echo $num1+$num2;;
# results in: 1+2
...要么...
echo `$num1`+`$num2`;;
# results in: ...line 9: 1: command not found
似乎当我尝试添加添加(“ 2 + 2”而不是“ 4”)时,我仍然在获取字符串。
+1嗨,金发姑娘,是的,事后我就明白了,但是是的,我完全同意你的推理,是的,问题越具体,越“单一”就越好。我欢迎您的编辑:)谢谢:)
—
Michael Durrant
case
任何内容都无关,除了一行:echo $num+$num
,因为这样可以准确地再现问题。这里解释了在编程问题中最小化上下文的想法:sscce.org