I would like to be able to load a commandline into an environmnetal variable and then runn the command using that variable.
It seems to work OK until I get special characters in the commandline. For instance
Code:
REMOVECOMMAND="rm -f $DESTINATIONDIR/$SOURCEHOSTNAME/$TARFILENAME{,.gz}"
$REMOVECOMMAND
runs just fine!! But
Code:
BACKUPCOMMAND="tar -cf $DESTINATIONDIR/$SOURCEHOSTNAME $TARFILENAME $SOURCEDIRECTORY > $DESTINATIONDIR/$SOURCEHOSTNAME/$LISTNAME 2>>$MAILFILE"
$BACKUPCOMMAND
fails!
Looking at the results of "set -x" shows that the redirects are being put in single quotes.
I have tried using
Code:
eval $BACKUPCOMMAND
my "set -x" output looks like this:
Code:
+ eval tar -cf /data2/iwapps2/admin-nitely2.tar /usr/local/admin '>' /data2/iwapps2/admin-nitely2.ls '2>>/root/mailfile-local-nitely-admin'
++ tar -cf /data2/iwapps2/admin-nitely2.tar /usr/local/admin
+ OURCEHOSTNAME/admin-nitely2.ls
+ status=127
I have tried various varations of the eval command and none seem to work. Would appreciate any guidence.
THNX