grep multiple lines


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting grep multiple lines
# 15  
Old 02-02-2005
I do not have ggrep
# 16  
Old 02-02-2005
Quote:
Originally Posted by Perderabo
I kinda like that. But I think all he wants is just...
sed -n '/regexp/{N;p;}'
regexp=something
sed -n /$regexp'/{N;p;}'
# 17  
Old 02-02-2005
perderabo seems to get it all..This should work..
# 18  
Old 02-02-2005
Close. VERY close. I am almost there.

Now, Perderabo, let's say I have several "somethings"...kinda like this:

regexp=something
regexp2=anothersomething
regexp3=lastsomething

How would I use the sed -n /$regexp'/{N;p;}' in that case????


-cd
# 19  
Old 02-02-2005
Smilie I have no idea what that's supposed to mean...but maybe...
Code:
for regexp in something anothersomething lastsomething ; do
        sed -n /$regexp'/{N;p;}'  <  datafile
done

# 20  
Old 02-02-2005
Try this:

#!/bin/ksh
while read regexp;do
sed -n /$regexp'/{N;p;}
done


name this file regexp.ksh and execute this as

. regexp.ksh < regexp.txt

where regexp.txt has all those
something
anothersomething
lastsomething
# 21  
Old 02-02-2005
I was afraid my explanation would be vague. Lemme try to be more specific.

Suppose the following three alarms are in a log file:

Wed Feb 2 07:02:22 <vsm> 91041 Line 37 Severity 4 Vps 8
No Host Found - TN:2135572346

Wed Feb 2 07:02:22 <vsm> 91041 Line 23 Severity 4 Vps 3
No Host Found - TN:2156772216


Wed Feb 2 07:02:22 <vsm> 91041 Line 12 Severity 4 Vps 1
No Host Found - TN:2165523456

Now...let's suppose that the only one I really care about is the one in blue. What I want to do is prompt a user to tell me the "Line" number, then the "Vps" number. So for this example, the user would input Line 23 and Vps 3.

The script would then look at all 91041 alarms, find the one(s) for Line 23 and Vps 3, then report them back to me. As a bonus, it would also report the second line of the 91041 alarm to me, which is important because it has the TN. In other words, after running my script, one would see:

Wed Feb 2 07:02:22 <vsm> 91041 Line 23 Severity 4 Vps 3
No Host Found - TN:2156772216


Does that make more sense???

-cd
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Exclude multiple lines using grep

Hi, I'm working on a shell script that reports service status on a database server. There are some services that are in disabled status that the script should ignore and only check the services that are in Enabled status. I output the service configuration to a file and use that information to... (5 Replies)
Discussion started by: senthil3d
5 Replies

2. Shell Programming and Scripting

Grep and display multiple lines

Hi guys, I have a log file that generates multiple logs about a query. <query time='2016-04-13 13:01:50.825'> <PagingRequestHandler> <Before>brand:vmu</Before> <After>brand:vmu</After> </PagingRequestHandler> <GroupDeviceFilterHandler> <Before>brand:vmu</Before> ... (3 Replies)
Discussion started by: Junaid Subhani
3 Replies

3. Shell Programming and Scripting

Grep and exttract multiple lines

Hello: I am trying to use grep in cygwin to do the following, however I am unable to get the output in the desired format. Please see and let me know how to solve this Input log file 20140403 07:29:26 IN:CTRL=:TYP=TYP1:DCN=DCN1:DATA= 20140403 07:25:26 IN:CTRL=:TYP=TYP1:DCN=DCN2:DATA=... (4 Replies)
Discussion started by: wincrazy
4 Replies

4. Shell Programming and Scripting

grep from multiple lines in several gz files

Hello all, I have been struggling to get grep work to my requirements. Basically I have to filter out patterns spread across multiple lines over hundreds of .gz files in a folder. And the output needs to be piped to a file. Here is the example: folder name: logs files in this folder:... (4 Replies)
Discussion started by: mandhan
4 Replies

5. UNIX for Dummies Questions & Answers

Grep multiple lines

I want to grep multiple lines from a text file. I want to grep all lines containing X,Y and NA in a single command. How do I go about doing that? This is what my text files look like: rs1983866 0.0983 10 100016313 rs1983865 0.5994 X 100016339 rs1983864 0.3272 11 100017453 rs7077266... (2 Replies)
Discussion started by: evelibertine
2 Replies

6. UNIX for Advanced & Expert Users

grep across multiple lines

How do you grep 'select * from table_name' string from a script if the select * and from table_name are on 2 different lines ? like select * from table_name Any help would be greatly appreciated !!! Thanks RDR (4 Replies)
Discussion started by: RDR
4 Replies

7. UNIX for Dummies Questions & Answers

grep in multiple lines

hi i have kind of below text in a file. I want to get a complete paragraph starting with START and ending with before another START) which has a particular string say XYZ or ABC START XYZ hshjghkjh 45 ljkfd fldjlj d jldf START 3493u ABC 454 4545454 4545454 45454 4545454 START ...... (3 Replies)
Discussion started by: reldb
3 Replies

8. UNIX for Dummies Questions & Answers

grep command to find multiple strings in multiple lines in a file.

I want to search files (basically .cc files) in /xx folder and subfolders. Those files (*.cc files) must contain #include "header.h" AND x() function. I am writing it another way to make it clear, I wanna list of *.cc files that have 'header.h' & 'x()'. They must have two strings, header.h... (2 Replies)
Discussion started by: ritikaSharma
2 Replies

9. Shell Programming and Scripting

grep multiple lines

Hi. I have this format on a textfile: VG Name /dev/vg00 PV Name /dev/dsk/c16t0d0 PV Name /dev/dsk/c18t0d0 PV Name /dev/dsk/c16t4d0 VG Name /dev/vg01 PV Name ... (6 Replies)
Discussion started by: jOOc
6 Replies

10. Shell Programming and Scripting

Grep on multiple lines

I 'm trying to grep 2 fieldds on 2 differnt lines. Like this: psit > file egrep -e '(NS|ES)' $file. Not working. If this succeeds then run next cmd else exit. Pls Help Gundu (13 Replies)
Discussion started by: gundu
13 Replies
Login or Register to Ask a Question