scripting issue

Paul Howarth paul at city-fan.org
Wed Aug 9 15:15:43 UTC 2006


Tom Brown wrote:
> Hi
> 
> If i am locally on a box the following works fine
> 
> ROOTDEV=`cat /boot/grub/grub.conf | grep "^\#.*root\=" | awk '{print $5}'`
> 
> but if i put this into a script to run from another host it fails eg
> 
> ssh $HOST 'ROOTDEV=`cat /boot/grub/grub.conf | grep "^\#.*root\=" | awk 
> '{print $5}'`'
> awk: cmd. line:1: {print
> awk: cmd. line:1:       ^ unexpected newline or end of string
> 
> seems the space in the print $5 upsets things - anyone know how to 
> escape this space out so it will work?

Why use three commands when one will do?

ssh $HOST 'awk '\''/^#.*root=/ { dev=$NF; sub("root=", "", dev); print 
dev }'\'' /boot/grub/grub.conf'

Paul.




More information about the fedora-list mailing list