The first step for you to create the script to change �JAVA_OPTS� variable definition as follows:
Original line:
JAVA_OPTS="-Dname=$JAVA_NAME -Xmx$JVM_MAX -DAGENT_HOME=$RT_HOME -DINSTALL_DIR=$RT_HOME -Djavax.net.ssl.keyStore=$RT_HOME/conf/client.keystore -Djavax.net.ssl.keyStoreType=jks -Djavax.net.ssl.keyStorePassword -Dhttps.cipherSuites=SSL_RSA_WITH_RC4_128_SHA $DEBUG_OPTS -COMM_NOT_DEPLOY=native_lib $AGENT_CONFIG_PROPS"
Change to:
JAVA_OPTS="-client -Dname=$JAVA_NAME -Xmx$JVM_MAX -DAGENT_HOME=$RT_HOME -DINSTALL_DIR=$RT_HOME -Djavax.net.ssl.keyStore=$RT_HOME/conf/client.keystore -Djavax.net.ssl.keyStoreType=jks -Djavax.net.ssl.keyStorePassword -Dhttps.cipherSuites=SSL_RSA_WITH_RC4_128_SHA $DEBUG_OPTS -COMM_NOT_DEPLOY=native_lib $AGENT_CONFIG_PROPS
IF THE "-client" option is already in, do nothing and print out the message " no change is needed" or add "-client" to the orignal script.
please reply me
thanks
aigles
2
Sounds like homework...
A possible solution :
> cat asirohi.sh
InputFile='asirohi.dat'
JavaOpts='JAVA_OPTS'
if grep -q "^$JavaOpts=" $InputFile
then
if grep -q "^$JavaOpts=\"-client " $InputFile
then
echo "No change neeeded !"
else
sed "s/^\($JavaOpts=\"\)/\1-client /" $InputFile > ${InputFile}.tmp && \
mv ${InputFile} ${InputFile}.old && \
mv ${InputFile}.tmp ${InputFile}
fi
else
echo "File doesn't contain $JavaOpts variable definition !"
fi
> cat asirohi.dat
ROOT=/
JAVA_OPTS="-Dname=$JAVA_NAME -Xmx$JVM_MAX -DAGENT_HOME=$RT_HOME -DINSTALL_DIR=$RT_HOME -Djavax.net.ssl.keyStore=$RT_HOME/conf/client
.keystore -Djavax.net.ssl.keyStoreType=jks -Djavax.net.ssl.keyStorePassword -Dhttps.cipherSuites=SSL_RSA_WITH_RC4_128_SHA $DEBUG_OPT
S -COMM_NOT_DEPLOY=native_lib $AGENT_CONFIG_PROPS"
TMP=/tmp
> asirohi.sh
> cat asirohi.dat
ROOT=/
JAVA_OPTS="-client -Dname=$JAVA_NAME -Xmx$JVM_MAX -DAGENT_HOME=$RT_HOME -DINSTALL_DIR=$RT_HOME -Djavax.net.ssl.keyStore=$RT_HOME/con
f/client.keystore -Djavax.net.ssl.keyStoreType=jks -Djavax.net.ssl.keyStorePassword -Dhttps.cipherSuites=SSL_RSA_WITH_RC4_128_SHA $D
EBUG_OPTS -COMM_NOT_DEPLOY=native_lib $AGENT_CONFIG_PROPS"
TMP=/tmp
> asirohi.sh
No change neeeded !
> cat asirohi.dat
ROOT=/
JAVA_OPTS="-client -Dname=$JAVA_NAME -Xmx$JVM_MAX -DAGENT_HOME=$RT_HOME -DINSTALL_DIR=$RT_HOME -Djavax.net.ssl.keyStore=$RT_HOME/con
f/client.keystore -Djavax.net.ssl.keyStoreType=jks -Djavax.net.ssl.keyStorePassword -Dhttps.cipherSuites=SSL_RSA_WITH_RC4_128_SHA $D
EBUG_OPTS -COMM_NOT_DEPLOY=native_lib $AGENT_CONFIG_PROPS"
TMP=/tmp
~/Forums>
Jean-Pierre.
how does this work, is there not a simple way to parse and add "-client" if its not present.
Use sed:
sed 's/"-Dname/"-Client -Dname/g' file