我想使用下面的代码来启动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括在大括号或括号中?
答案 0 :(得分:2)
如果你想要CATALINA_OPTS中的DUMPSPATH内容(见Variable Substitution)你必须使用双引号而不是单引号:
export CATALINA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -XX:ErrorFile=$DUMPSPATH/hs_err_pid%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$DUMPSPATH"
答案 1 :(得分:0)
只要$DUMPSPATH
后面跟不是参数名称的合法字符的字符(例如_
),就可以了。也就是说,使用${DUMPSPATH}
永远不会出错,所以请随意使用它以保证安全。