如何在Weblogic启动脚本中转义OSX上的空间

时间:2013-02-21 14:02:27

标签: macos bash escaping space

以下是脚本中有问题的部分: export JAVA_OPTIONS =“ - javaagent:/ Users / tipton_g / Library / Application Support / IntelliJIdea12 / jr-ide-idea / lib / jrebel / jrebel.jar $ JAVA_OPTIONS”

找不到“Application Support”目录,因为无法识别空间。不幸的是,在这种情况下,Application \ Support和“Application Support”(引号)都不起作用,因为整个参数都是一个字符串。

有一个建议是我只是对文件进行符号链接,但我想知道当整个内容已经在引号内时,是否有办法逃避空间。

任何建议都表示赞赏。

3 个答案:

答案 0 :(得分:1)

我最后只是对该文件进行了符号链接,并在脚本中引用了符号链接。似乎工作正常,如果有点hacky。

答案 1 :(得分:1)

您可以下载ZIP archive的JRebel并将其解压缩到不包含空格的目录中。事实上,如果您使用JRebel代理从IDE启动容器,这就是JRebel IntelliJ插件正在执行的操作 - 它将jrebel.jar复制到一个临时文件夹中,该文件夹中不包含空格,因此不会出现任何转义问题

答案 2 :(得分:0)

在路径周围添加单引号:

JAVA_OPTIONS="-javaagent:'/Users/tipton_g/Library/Application Support/IntelliJIdea12/jr-ide-idea/lib/jrebel/jrebel.jar' $JAVA_OPTIONS"

但是除非$JAVA_OPTIONS  在任何进一步的脚本编写中使用双引号,您将再次遇到此问题。