[英]-bash: syntax error near unexpected token '(' when running Java program from command line
我试图弄清楚为什么我从命令行运行基本计算器Java程序时在意外令牌'('附近出现-bash:语法错误。
该项目已完成提交并已评分,因此没有学术上的不诚实意图。
在我的终端(macOs 10.13.6)中,我正在使用以下命令运行程序:
java InfixExpressionEvaluator (a+b)*(c-9) "a=1 b=2 c=3";
其中(a+b) * (c-9)
是要使用以下给定变量求值的表达式。 但是,每次我得到-bash:意外标记'('附近的语法错误。这是由于表达式(a+b) * (c-9)
的格式引起的吗?我对bash脚本不熟悉,但是有些谷歌搜索它似乎好像终端试图将'('解释为脚本的一部分,并且要解决此问题,我需要将(a+b) * (c-9)
放在引号内,即"(a+b) * (c-9)"
。这是否正确,或者我缺少什么?
需要引用“要评估的表达式”,因为它包含几个对Bash具有特殊意义的字符( (
, )
, *
)。 这应该工作:
java InfixExpressionEvaluator '(a+b)*(c-9)' 'a=1 b=2 c=3'
不需要扩展,因此我使用单引号而不是双引号。 我删除了尾随;
因为Bash不需要它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.