scripting issue
Paul Howarth
paul at city-fan.org
Wed Aug 9 17:04:28 UTC 2006
Graham Cossey wrote:
> On 8/9/06, Paul Howarth <paul at city-fan.org> wrote:
>> 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?
>
> LOL, because this looks damned complicated :
>
>> ssh $HOST 'awk '\''/^#.*root=/ { dev=$NF; sub("root=", "", dev); print
>> dev }'\'' /boot/grub/grub.conf'
Yes, I added a bit that wasn't in the original, namely the removal of
the "root=" text. Without that, it's a bit simpler:
ssh $HOST 'awk '\''/^#.*root=/ { print $5 }'\'' /boot/grub/grub.conf'
Paul.
More information about the fedora-list
mailing list