Question

I want to use below code to start the 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

Just wanted to check if DUMPSPATH variable is used correctly in export statement or should DUMPSPATH be enclosed in curly brackets or parenthesis?

Was it helpful?

Solution

If you want the content of DUMPSPATH in CATALINA_OPTS (see Variable Substitution) you have to use doublequotes not single quote:

export CATALINA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -XX:ErrorFile=$DUMPSPATH/hs_err_pid%p.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$DUMPSPATH"

OTHER TIPS

As long as $DUMPSPATH is not followed by a character (such as _) that is a legal character for a parameter name, you are OK as-is. That said, it is never an error to use ${DUMPSPATH}, so feel free to use it to be on the safe side.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top