[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: How to search and replace



Dan Track wrote:
On 2/2/06, Paul Howarth <paul 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 10 11 8 10
Directory[description1]: server1

Target[description2].1.3.4.6.4.9.:string 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 10 11 8 10 to become
Target[description1].1.3.4.6.5.3.:string 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.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]