How to search and replace
Paul Howarth
paul at city-fan.org
Thu Feb 2 16:10:08 UTC 2006
Dan Track wrote:
> On 2/2/06, Paul Howarth <paul at city-fan.org> wrote:
>
>>Dan Track wrote:
>>
>>>Hi
>>>
>>>I thought I'd ask this here as you guys helped me setup mrtg :)
>>>
>>>I've got the following pattern in a text file in linux.
>>>Target[description1].1.3.4.6.5.3.:string at 10.11.8.10
>>>Directory[description1]: server1
>>>
>>>Target[description2].1.3.4.6.4.9.:string at 10.17.5.24
>>>Directory[description2]: server2
>>>
>>>What I would like to do is replace the ip of each with the following
>>>value of "Directory". So for example I would like
>>>Target[description1].1.3.4.6.5.3.:string at 10.11.8.10 to become
>>>Target[description1].1.3.4.6.5.3.:string at server1.example.com
>>>
>>>How can I accomplish this using either C,perl,sed or awk
>>
>>sed -e '$b
>> /^Target\[[^]]*\][.0-9]*:.*@[0-9.]*$/ {
>> $!N
>> s/^\(Target\[[^]]*\][.0-9]*:.*@\)[0-9.]*\nDirectory\[[^]]*\]:
>>\(.*\)$/\1\2.example.com/
>> P;D
>> }' textfile > output
>>
>
>
> Thanks for the reply. When I run it I get the following error:
The long line starting with "s/" and ending with "example.com/" is a
single long line; make sure your mail client didn't add a newline.
Paul.
More information about the users
mailing list