0

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?

2 Answers2

2

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"
Alepac
  • 1,833
  • 13
  • 24
0

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.

chepner
  • 497,756
  • 71
  • 530
  • 681