Hi Irfan
[...]
> hi rob,
>
> Thanks for your mail.
>
> let me modify my request in more clear manner.
> basically I have one file. The format of that file is as follows.
>
> Replica name : some string
> master replica : some string
> hostname : some string
>
> replica name : some string
> master replica : some string
> hostname : some string
>
> so what I want is , search this entire file for following thing
>
> if Replica name option contains "cmvobsvr1mum" word(string) then print
> both these line . I mean print
>
> replica name : some string_cmvobsvr1mum
> master replica : some string
Not clear if you mean a string or a word, but here is one way to do it:
Dani
#!/usr/bin/perl
use strict;
use warnings;
# if the regex matches, print the actual line ($_) and the
# following line (scalar <DATA>). Repeat for every input
# line (while (<DATA>)).
# Omit the two \b if "cmvobsvr1mum" may be part of a string
/^Replica name : .*?\bcmvobsvr1mum\b.*?/
&&
print $_, scalar <DATA>
while (<DATA>);
__DATA__
Replica name : some cmvobsvr1mum string
master replica : some string (1)
hostname : some string
Replica name : some string DON'T PRINT THIS LINE
master replica : some string (2)
hostname : some string
Replica name : some string cmvobsvr1mum
master replica : some string (3)
hostname : some string
Replica name : cmvobsvr1mumsome string DON'T PRINT THIS LINE
master replica : some string (4)
hostname : some string
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>