【发布时间】:2016-08-20 17:18:25
【问题描述】:
假设我有一个名为 white space 的文件夹,其中包含一个名为 foo 的类文件。
在命令行上,我可以通过下面的命令轻松调用foo程序
java -cp "white space/" foo
它会正常工作的。
我想将整个命令设置为 Bash 中的变量并调用此变量而不是整个命令本身。
所以,假设我将命令设置为以下
bar='java -cp "white space/" foo'
我尝试通过 $bar 调用命令,但我不断收到错误消息:
Error: Could not find or load main class space
你会如何解决这个问题?
【问题讨论】:
-
你能像在 java 中那样在 bash 中转义 char 吗?所以它看起来像这样:
bar="java -cp \"white space/\" foo"? -
展示实际失败的代码怎么样?如果没有看到您如何尝试使用
$bar,我们无法真正回答。换句话说,提交一个minimal reproducible example。 -
请注意,
/实际上并不是目录名称的一部分。最好省略它。
标签: java bash command-line-interface