Re: Scripting: awk reg. exp.

From: Sunder Iyengar (Sunder.Iyengar@VERITAS.COM)
Date: Fri Dec 05 2003 - 18:31:54 EST


Since you are not interested in lines that are commented out with a *, try
this as a pattern matching string to select only relevant lines:

awk '!/^ *\* */ {sub(....) etc.}'

This should not select any lines that have zero or more spaces followed by a
*, followed by zero or more spaces, at the beginning of the line.

Hope this helps.

Sunder.

-----Original Message-----
From: Green, Simon [mailto:Simon.Green@EU.ALTRIA.COM]
Sent: Saturday, 6 December 2003 4:55 AM
To: aix-l@Princeton.EDU
Subject: Re: Scripting: awk reg. exp.

Unfortunately not, because there's white space before the "host" parameter.

Simon Green
Altria ITSC Europe Ltd

AIX-L Archive at https://new-lists.princeton.edu/listserv/aix-l.html

AIX FAQ at http://www.faqs.org/faqs/aix-faq/

N.B. Unsolicited email from vendors will not be appreciated. Please post all
follow-ups to the list.

> -----Original Message-----
> From: Bill Verzal [mailto:BVerzal@KOMATSUNA.COM]
> Sent: 05 December 2003 16:30
> To: aix-l@Princeton.EDU
> Subject: Re: Scripting: awk reg. exp.
>
>
> {sub(/^host = old_name/,"^host = new_name");print}
>
> Does ^ (starts with) work ?
>
<SNIP>
>>
>> Hi!
>> I'm trying to write a little script to automate some changes to
>> /etc/qconfig: changing certain host names. I've decided to use awk
>> even though (or perhaps "because") I'm not very familiar with it.
>>
>> So far, I've come up with:
>> {sub(/host = old_name/,"host = new_name");print}
>> ...and that works fine, except that it will also make changes to
>> entries which have been commented out, which I would prefer to avoid.
>>
>> Is there some way of constructing the command so that it does not
>> select those lines which have been commented out? Remember:
>> /etc/qconfig uses an
>> asterisk as a comment-character, which is damn stupid!



This archive was generated by hypermail 2.1.7 : Wed Apr 09 2008 - 22:17:23 EDT