Need command for grepping pattern lines with subsequent lines


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Need command for grepping pattern lines with subsequent lines
# 1  
Old 03-04-2013
Need command for grepping pattern lines with subsequent lines

Hi,

I have a requirement like, I have a list of pattens in a file say pattern.txt,

Code:
PHC111
PHC113

and in another file called master.lst i have entries like,

Code:
PHC111
a
b
PHC112
a
PHC113
b
c
PHC114
d
e
PHC115

now i want to use the pattern.txt file as patterns and grep the lines in master.lst so that i will get output like,
Code:
PHC111
a
b
PHC113
b
c

Please suggest the suitable command. Thanks.

Last edited by radoulov; 03-06-2013 at 10:07 AM.. Reason: Code tags!
# 2  
Old 03-04-2013
What have you tried?
# 3  
Old 03-06-2013
Do the PHC lines ALWAYS start with "PHC"?
It helps to exactly describe the problem.
# 4  
Old 03-06-2013
Also, what's your OS? (more specifically, do you have GNU grep?)
# 5  
Old 03-06-2013
you can use this code if your PHC line always starts with "PHC"

here pattern.txt contain your pattern list
and mint.txt contains your data

Code:
while read pat
do
count=2
while read line
do
b=`echo $line|grep PHC`
if [ $? -eq 0 ]
then
if [ $count -eq 1 ]
then
break;
break;
fi
a=`echo $line|grep $pat`
if [ $? -eq 0 ]
then
count=`echo "$count-1"|bc`
fi
fi
if [ $count -eq 1 ]
then
echo $line
fi
done<mint.txt
done<pattern.txt

# 6  
Old 03-06-2013
Using while loop:

Code:
while read line;do egrep -A2 $line file2;done < file1

PHC111
a
b
PHC113
b
c

Using awk:

Code:
awk 'FNR==NR {a[$1];next} $1 in a {print;getline;print;getline;print}' file1 file2

PHC111
a
b
PHC113
b
c

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Printing next two lines from a file after grepping a specific pattern

Hi I have a file like # vi require.txt 1,BANK,Read blocks that cycle. yellow Read blocks. 2,ACCOUNT,Finished Red Finished . 3,LOAN, pipe white pipe 4,PROFIT,Resolve. black Resolve Am using like cat require.txt | grep -w ACCOUNTThe output I get is (8 Replies)
Discussion started by: Priya Amaresh
8 Replies

2. Shell Programming and Scripting

Grep the word from pattern line and update in subsequent lines till next pattern line reached

Hi, I have got the below requirement. please suggest. I have a file like, Processing Item is: /data/ing/cfg2/abc.txt /data/ing/cfg3/bgc.txt Processing Item is: /data/cmd/for2/ght.txt /data/kernal/config.klgt.txt I want to process the above file to get the output file like, ... (5 Replies)
Discussion started by: rbalaj16
5 Replies

3. Shell Programming and Scripting

awk - use fields from subsequent lines

I've run into a problem getting exactly what I want out of awk - some folks may recognize this as an output from Amazon's ec2-describe-instances: Given the following: INSTANCE i-4960f321 BLOCKDEVICE Line2Var2 TAG instance i-4960f321 Name web1 TAG instance i-4960f321... (2 Replies)
Discussion started by: colinjohnson
2 Replies

4. Shell Programming and Scripting

Finding lines matching the Pattern and their previous lines in a file

Hi, I am trying to locate the occurences of certain pattern like 'Possible network disconnect' in a text file. I can get the actual lines matching the pttern using: grep -w 'Possible network disconnect' file_name. But I am more interested in getting the timing of these events which are... (7 Replies)
Discussion started by: sagarparadkar
7 Replies

5. Shell Programming and Scripting

Find pattern, and then last field from subsequent lines

I've got a log file, of the format Name: network1 Dropped packets: 15618 Dropped packets for IPv6: 27 Dropped packets: 74 Dropped packets for IPv6: 0 Failed RADIUS Authentication procedures: 0 Failed RADIUS Accounting procedures: 0 Name: network2 Dropped packets: 1117 ... (18 Replies)
Discussion started by: Yorkie99
18 Replies

6. Shell Programming and Scripting

Grep and fetch subsequent lines also

Hi, I need to grep a pattern and fetch subsequent lines till end of the data-set. E.g., i have a file like: AA 1111 23 34 BB 45 56 78 CC 22 44 AA 2222 78 34 56 BB 22 56 67 68 23 CC 56 78 DD 33 55 77 AA 3333 46 BB 58 79 In above file i have 3-data sets where each set starts with... (6 Replies)
Discussion started by: prvnrk
6 Replies

7. Shell Programming and Scripting

search for keyword in subsequent lines and delete the second line

I have my data something like this I need to search for the keyword yyyy in the susequent lines and if it is present, delete the second line with keyword. In other words, if a keywords is found in two subsequent lines delete the second line. input data: aaaa bbbbb cccc dddd xxxx... (4 Replies)
Discussion started by: rdhanek
4 Replies

8. Shell Programming and Scripting

How to search for keywords in subsequent lines

Hi all, I am looking for a coomand to search for the keywords in susequenct lines. Keyword1 in a line and Keyword2 in the very next line. Once i found the combination ineed to print the lines with patterns and the line above and one below. I am giving an example here: Keywords are :ERROR and... (12 Replies)
Discussion started by: rdhanek
12 Replies

9. Shell Programming and Scripting

How to extract a substring and append to subsequent lines

Hi all,I am really new to Shell Scripting.I have the following doubt. Let us assume the one sample file which contains the below data HEADERCARMENTRACIE1555090414 PERIOD0905090501090531 DETAIL0645693037023073836 GROUNDAV 090501 01 GROUNDAV 090502 01 TRIP 0091282542 0905084101... (5 Replies)
Discussion started by: jaligamasriniva
5 Replies

10. Shell Programming and Scripting

replace only 1st word of a line if it comes in the subsequent lines at same postion.

I have a file like this.. Maharastra Mumbai worli Maharastra Mumbai navy maharatra Pune Maharastra Nagpur Karnataka Bangalore Karnataka Mysore Karnataka Mangalore Punjab Amritsar punjab Jalandar my expected outcome should be like this Maharastra Mumbai worli ---------- ... (9 Replies)
Discussion started by: geeko
9 Replies
Login or Register to Ask a Question