read lines between search pattern


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting read lines between search pattern
# 1  
Old 12-08-2010
read lines between search pattern

I have a file split something like

01/11/2010:
No of users 100

02/11/2010:
No of users 102

03/11/2010:
No of users 99

...

I want to search the file for a particular date and then extract the following line with the date, something like

02/11/2010 No of users 102

I can grep the date or read the file but now sure how to read the line(s) before the next date?
# 2  
Old 12-08-2010
Code:
grep -A1 "02/11/2010" file

# 3  
Old 12-08-2010
Code:
grep -A 1 "02/11/2010" your_file | tr -s ":\n" " "

tyler_durden
# 4  
Old 12-08-2010
thanks for the reply, unfortunately grep -A is recognised, I'm using AIX
# 5  
Old 12-08-2010
Quote:
Originally Posted by gefa
...unfortunately grep -A is recognised, I'm using AIX
I guess you mean it is not recognized.

If that's the case then you could use awk to join the pair of lines and then grep just the date of interest.

Code:
$
$ cat f45
01/11/2010:
No of users 100
 
02/11/2010:
No of users 102
 
03/11/2010:
No of users 99
 
$
$ awk '/:$/{printf $0 " "} !/:$/{print}' f45 | grep "02/11/2010"
02/11/2010: No of users 102
$
$

Or you could use Perl -

Code:
$
$ perl -lne 'BEGIN {$d="02/11/2010"} if (/$d/){printf("%s ",$_); $x=1} elsif ($x){print; $x=0}' f45
02/11/2010: No of users 102
$
$

tyler_durden
# 6  
Old 12-08-2010
MySQL

Yes both solutions work, many thanks for your help and speedy resonse.Smilie
# 7  
Old 12-08-2010
Code:
nawk '$1 ~ str {printf $0 OFS;n=1;next} n--==1 {print}' str='02/11/2010' myFile

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Search Pattern and Print lines in Single Column

Hi Experts I have small query where I request the into a single file Suppose: File1: {Unique entries} AA BB CC DD FileB: AA, 123 AA, 234 AA, 2345 CC, 123 CC, 5678 DD,123 BB, 7890 (5 Replies)
Discussion started by: navkanwal
5 Replies

2. Shell Programming and Scripting

Search pattern on logfile and search for day/dates and skip duplicate lines if any

Hi, I've written a script to search for an Oracle ORA- error on a log file, print that line and the .trc file associated with it as well as the dateline of when I assumed the error occured. In most it is the first dateline previous to the error. Unfortunately, this is not a fool proof script.... (2 Replies)
Discussion started by: newbie_01
2 Replies

3. Shell Programming and Scripting

sed search pattern and delete lines

Hello, i have a question. My problem is that i have a file like: TEST JOHN ADAM MICHAEL SEBASTIAN ANDY i want find for MICHAEL and want delete lines like this: TEST (4 Replies)
Discussion started by: eightball
4 Replies

4. Shell Programming and Scripting

How to search for pattern in odd lines?

Hi friends, I am looking for sed command/script that would search for a given fixed pattern on odd lines and then if it matches, prints the matching pattern and the next line. For example, in the example below, i am looking for pattern 0 and 1011 on odd lines. ########## start of example file... (10 Replies)
Discussion started by: kaaliakahn
10 Replies

5. Shell Programming and Scripting

search pattern and read lines

Hi, I have a huge de-limited file which has pattern : 99"9876"2010-11-21 12:51:01"J"MNOPQRS ID# 2-1234-1234-0099-9876-0 "" <<read>> 99"9876"2010-11-21 12:51:01"K"R-EMP# 01234567 (LOGOFF) "" <<read>> 99"9876"2010-11-21 12:51:01"L" *AUTO LOGOFF* ... (3 Replies)
Discussion started by: angie1234
3 Replies

6. Shell Programming and Scripting

Need one liner to search pattern and print everything expect 6 lines from where pattern match made

i need to search for a pattern from a big file and print everything expect the next 6 lines from where the pattern match was made. (8 Replies)
Discussion started by: chidori
8 Replies

7. Shell Programming and Scripting

Search for Pattern and Print including Lines in between

Gurus, I have a big file that needs to be sorted out and I cant figure out what to do. The file name is as below: Name: xxxx yyyy nnnn Description: dfffgs sdgsgsf hsfhhs afgghhjdgj fjklllll gsfhfh Updated: jafgadsgg gsg Corrected: date today The file consists of line like these. ... (13 Replies)
Discussion started by: The One
13 Replies

8. Shell Programming and Scripting

Pattern search in multiple lines

Hi, I have to search those statements from the file which starts from "shanky"(only shanky, shanky09 or 09shanky is not allowed) and ends with ");". These two string can be in a same line or different line. And also i have to negate those lines which starts with #. Can any one please give me... (2 Replies)
Discussion started by: shanky09
2 Replies

9. UNIX for Dummies Questions & Answers

Print lines between the search pattern

hi, I have a file say x.txt containing xxx 123 bla bla ... you xxx dfk dbf ... me xxx ... ... keeps on.. i need to search for pattern in the line starting xxx in the file. If pattern matched, I need to fetch all the lines till i find next xxx. (17 Replies)
Discussion started by: prsshini
17 Replies

10. Shell Programming and Scripting

Search file for pattern and grab some lines before pattern

I want to search a file for a string and then if the string is found I need the line that the string is on - but also the previous two lines from the file (that the pattern will not be found in) This is on solaris Can you help? (2 Replies)
Discussion started by: frustrated1
2 Replies
Login or Register to Ask a Question