繁体   English   中英

-bash:从命令行运行Java程序时,意外标记'('附近的语法错误

[英]-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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM