0

我想使用下面的代码来启动 apache-tomcat,

#!/bin/bash
DUMPSPATH='/home/tomcat/dumps'
export CATALINA_OPTS='-Djava.awt.headless=true -Dfile.encoding=UTF-8 -XX:ErrorFile=$DUMPSPATH/hs_err_pid%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$DUMPSPATH'
/opt/apache-tomcat-6.0.36/bin/startup.sh

只是想检查 DUMPSPATH 变量是否在导出语句中正确使用,或者 DUMPSPATH 是否应该用大括号或括号括起来?

4

2 回答 2

2

如果您想要 CATALINA_OPTS 中 DUMPSPATH 的内容(请参阅变量替换),您必须使用双引号而不是单引号:

export CATALINA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -XX:ErrorFile=$DUMPSPATH/hs_err_pid%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$DUMPSPATH"
于 2013-03-08T16:22:02.910 回答
0

只要$DUMPSPATH后面没有作为参数名称的合法字符的字符(例如_),您就可以按原样进行。也就是说,使用它永远不会出错${DUMPSPATH},所以为了安全起见,请随意使用它。

于 2013-03-08T16:16:56.490 回答