retrieving data between two strings


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers retrieving data between two strings
# 1  
Old 07-20-2012
retrieving data between two strings

I have input file like
Code:
AAA
AAA
CCC
CCC
CCC
EEE
EEE
EEE
EEE
FFF
FFF
GGG
GGG

i was trying to retrieve data between two strings using sed.
Code:
sed -n /CCC/,/FFF/p input_file

Am getting output like
Code:
CCC
CCC
CCC
EEE
EEE
EEE
EEE
FFF

The above command retrieves the data till to the first occurence of the destination string (i.e., till 1st occurence off FFF record)
I need to search the records till last occurence.
Expected output is
Code:
CCC
CCC
CCC
EEE
EEE
EEE
EEE
FFF
FFF

Plz help on this query.

Last edited by Scrutinizer; 07-20-2012 at 08:34 AM.. Reason: code tags
# 2  
Old 07-20-2012
You can try following command

Code:
sed -n '/CCC/,/GGG/p' FILE_NAME |sed '$d'


Last edited by Scrutinizer; 07-20-2012 at 08:34 AM.. Reason: code tags
# 3  
Old 07-20-2012
The problem is i dont know the next record to delete in the file (may be GGG or ZZZ). In that case how can we use destination string.
# 4  
Old 07-20-2012
@Yogi: what would you do.. If the next string after the last FFF is HHH and the next time it changes to MMM and it keep changing?
# 5  
Old 07-20-2012
Try:
Code:
awk '/FFF/ || /CCC/,/FFF/' infile

# 6  
Old 07-20-2012
Quote:
Originally Posted by Scrutinizer
Try:
Code:
awk '/FFF/ || /CCC/,/FFF/' infile

Code:
cat test
AAA
AAA
CCC
CCC
CCC
EEE
EEE
EEE
EEE
FFF
FFF
GGG
GGG
dfffffffff
dfdf
FFF
dfdf
dfdf
dfd

awk '/FFF/ || /CCC/,/FFF/' test
CCC
CCC
CCC
EEE
EEE
EEE
EEE
FFF
FFF
FFF

Missed records:

Code:
GGG
GGG
dfffffffff
dfdf

# 7  
Old 07-20-2012
Good point, but the OP's requirements appeared to be limited to consecutive patterns...
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Get data from file using awk within strings.

i am having the text data file as below. Processing 1 a 111111 b c d e f Processing 2 a b 222222 c erorr d e f Processing 3 a b 3333 (1 Reply)
Discussion started by: expert
1 Replies

2. Shell Programming and Scripting

Retrieving sequence data from other file

Hello experts :cool:, I am new to programming and will need your help.. I have 2 very large files with the following format: FILE1: >MLP1019 PL4 >MLP7456 PL3 >MLP9268 PL9 >MLP6245 PL1 FILE2: >MLP1019 STNAPLQTSNTWVSYQPSMMMSLQ >MLP7456 PPYWYWNSAVMIFYVQPLSLLAVLLA >MLP9268... (2 Replies)
Discussion started by: narachaid
2 Replies

3. Shell Programming and Scripting

Retrieving data from 65th col (of each line) ?

Hello Friends, I am in situation where I have to note down few SQL queries from specific hexdump format. Here is an example (the query text starts at 65th character on each line) ---------------------- 0x000007FEB0E701C0 : 7365 6C65 6374 2063 7573 746E 6F2C 2020 select custno, ... (9 Replies)
Discussion started by: Sunusernewbie
9 Replies

4. Linux

Retrieving Data from VHD File (Virtual Machine Harddrive)

Hello, I had Gentoo installed on a Microsoft Windows Hyper-V virtual machine. The system shutdown properly but the RAID array on the drive it was on failed. We had a backup that was poorly configured and as such we didn't back up all of the data we needed. Therefore, after getting the RAID... (0 Replies)
Discussion started by: ckoeber
0 Replies

5. UNIX and Linux Applications

Retrieving data from a database and store to a file

Hi I'm using and Oracle 10g Database. I want to write a script to retrieve data from the database and store it toa file. I'm using simple sql statements such as Select * from celltable I don't know how to specify the database name etc. I have this but it doesn't work ... (1 Reply)
Discussion started by: ladyAnne
1 Replies

6. Shell Programming and Scripting

Extract and parse data between two strings

Hi , I have a billing CDR file which is separated by “!”. I need to extract and format data between the starting (“!”) and the end of the line (“1.2.1.8”). These two variables are permanent tags to show begin and end. ! TICKET NBR : 2 ! GSI : 101 ! 3100.2.112.1 24/03/2010 00:41:14 !... (3 Replies)
Discussion started by: jaygamini
3 Replies

7. Shell Programming and Scripting

Extract data between two strings

Hi , I have a billing CDR file which has repeated lines as indicated below and I need to extract data between two strings (i.e.: <?> and </?>). Eventually, map that information with the corresponding field. I'm new to unix, any help will be greatly appreciated. Gamini Input (single line): !... (3 Replies)
Discussion started by: jaygamini
3 Replies

8. Shell Programming and Scripting

Using loop reading a file,retrieving data from data base.

Hi All, I am having trouble through, I am reading the input from tab delimited file containing several records, e.g. line1 field1 field2 field3 so on.. line2 field1 field2 field3 so on.. .. .. on the basis of certain fields for each record in input file, I have to retrieve... (1 Reply)
Discussion started by: Sonu4lov
1 Replies

9. Shell Programming and Scripting

How to grab data between 2 strings ?

Hi All, I have a text file below. How do i grab all the data between "05T00NPQSMR1" and "****" using awk ? Pls note that the text lines may not be fixed and text content is dynamic. Pls help. Thanks Below is my code where $LOT_SUFFIX is my shell variable. awk '/'"$LOT_SUFFIX"'/,/blah/'... (16 Replies)
Discussion started by: Raynon
16 Replies

10. UNIX for Dummies Questions & Answers

Retrieving data

Friends, I have a data with 3 columns: 30 41 1 39 19 4 14 25 3 .... .... ..... I want to retrieve any data in the first column that is greater 15. What is the best way to do this? Thanks! (2 Replies)
Discussion started by: bobo
2 Replies
Login or Register to Ask a Question