第 4 行:5 +:语法错误:需要操作数(错误标记为“+”)

第 4 行:5 +:语法错误:需要操作数(错误标记为“+”)

尝试在 Ubuntu (53-Ubuntu x86_64 x86_64 x86_64 GNU/Linux) 上执行下面列出的 bash 脚本时注意到主题行中提到的错误

#!/bin/bash

read x y
echo $(($x + $y))

然而,同样可以在 Redhat 和 CentOS 上完美运行。

请帮我找出为什么会发生这种情况所有操作系统都有 bash 版本 4.3.11(1)-release

答案1

它会出错,因为您只提供一个输入数字,而不是两个。在这种情况下, read 将此数字分配给变量x,但y将保持为空,因此下一行看起来像echo $(($x + ))。我们知道运算符+需要两个操作数,但这里y(第二个)丢失了,因此出现错误operand expected (error token is “+ ”)

相关内容