I need to add something to a file, plzz help

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

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