Print lines between strings like *0123456*


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Print lines between strings like *0123456*
# 1  
Old 05-17-2014
Print lines between strings like *0123456*

I have a text file contains

Code:
*02638650* SAMBO
1 Spouse    SAMBO    FELIX             

*01591453* MADUAGUGBUO
4 Child3    MADUAGUGBUO    JOY            

*01488523* ANYIAM
1 Spouse    ANYIAM    FRANCA          
2 Child1    ANYIAM    GRACE        

*01647769* EGWUTUOHA
0 Principal   EGWUTUOHA    JANE               
1 Spouse      EGWUTUOHA    PAUL         

*01486442* NNAOBI
4 Child3     NNAOBI    TOBONNA           

*01486598* NELSON
1 Spouse      NELSON    ROPHINA

I want to print out lines between *02638650* and *01591453* using awk or sed.

That means my output should give:
Code:
1 Spouse    SAMBO    FELIX

Thank you.
Moderator's Comments:
Mod Comment Please use CODE tags when displaying sample input, output, and code segments. Without CODE tags multiple spaces between fields are combined.

Last edited by Don Cragun; 05-17-2014 at 01:36 AM.. Reason: Add CODE tags.
# 2  
Old 05-17-2014
This may sound harsh, but you could not have been any lazier if you tried. We are here to help, at no cost to you, so why don't you take the time to explain your data instead of leaving your dump for us to decipher?.

Are those values constant? If not, how are they made avaialble? Are the records that begin and end inclusion always adjacent?

And, please, use code tags for sample code and data.

Regards,
Alister
# 3  
Old 05-17-2014
Thanks.

The text file contain list of members of different families.
The first line for each family has the family identification number and lastname e.g
Code:
*02638650* SAMBO

The next line will list members of family that is registered e.g
Code:
1 Spouse    SAMBO FELIX

What i want to achieve is to print out the members of family that is registered and add their family identity at the end of the line. e.g
Code:
1 Spouse    SAMBO FELIX 02638650

Thanks a lot.

Last edited by Don Cragun; 05-17-2014 at 01:47 AM.. Reason: Add CODE tags again.
# 4  
Old 05-17-2014
There is a huge difference between printing lines between two given strings and duplicating data found on the 1st line starting with an asterisk onto the ends of the following non-empty lines up to the next line starting with an asterisk.

Do you want to print selected lines or do you want to add data to the ends of selected lines?
How will your script be told which lines to select?

And PLEASE use CODE tags.
# 5  
Old 05-17-2014
Actually what i intend to achieve is "duplicating data found on the 1st line starting with an asterisk onto the ends of the following non-empty lines up to the next line starting with an asterisk".

Thanks.
# 6  
Old 05-17-2014
Maybe this?

gawk '/^\*/ { last[$2] = substr($1,2,length($1)-2); } NF && !/^\*/ { printf "%s %s\n", $0, last[$3]; }' filename
# 7  
Old 05-17-2014
Wahoo!!!, worked like charm. Thanks cnamejjj. Don cragun appreciate you too.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Print only lines where fields concatenated match strings

Hello everyone, Maybe somebody could help me with an awk script. I have this input (field separator is comma ","): 547894982,M|N|J,U|Q|P,98,101,0,1,1 234900027,M|N|J,U|Q|P,98,101,0,1,1 234900023,M|N|J,U|Q|P,98,54,3,1,1 234900028,M|H|J,S|Q|P,98,101,0,1,1 234900030,M|N|J,U|F|P,98,101,0,1,1... (2 Replies)
Discussion started by: Ophiuchus
2 Replies

2. Shell Programming and Scripting

Print lines between two strings multiple occurencies (with sed, awk, or grep)

Hello, I can extract lines in a file, between two strings but only one time. If there are multiple occurencies, my command show only one block. Example, monfichier.txt contains : debut_sect texte L1 texte L2 texte L3 texte L4 fin_sect donnees inutiles 1 donnees inutiles 2 ... (8 Replies)
Discussion started by: theclem35
8 Replies

3. Shell Programming and Scripting

Delete lines in file containing duplicate strings, keeping longer strings

The question is not as simple as the title... I have a file, it looks like this <string name="string1">RZ-LED</string> <string name="string2">2.0</string> <string name="string2">Version 2.0</string> <string name="string3">BP</string> I would like to check for duplicate entries of... (11 Replies)
Discussion started by: raidzero
11 Replies

4. Shell Programming and Scripting

Strings from one file which exactly match to the 1st column of other file and then print lines.

Hi, I have two files. 1st file has 1 column (huge file containing ~19200000 lines) and 2nd file has 2 columns (small file containing ~6000 lines). ################################# huge_file.txt a a ab b ################################## small_file.txt a 1.5 b 2.5 ab ... (4 Replies)
Discussion started by: AshwaniSharma09
4 Replies

5. Shell Programming and Scripting

print lines AFTER lines cointaining a regexp (or print every first and fourth line)

Hi all, This should be very easy but I can't figure it out... I have a file that looks like this: @SRR057408.1 FW8Y5CK02R652T length=34 AGCAGTGGTATCAACGCAGAGTAAGCAGTGGTAT +SRR057408.1 FW8Y5CK02R652T length=34 FIIHFF6666?=:88@@@BBD:::?@ABBAAA>8 @SRR057408.2 FW8Y5CK02TBMHV length=52... (1 Reply)
Discussion started by: kmkocot
1 Replies

6. Shell Programming and Scripting

Compare two strings, and print lines containing mismatches

pls help me on this... and im really sorry because i really don't know where to start here... FILE1 ABC DEF 10 2 DEF GHI 11 3 GHI JKL 12 5 JKL MNO 13 7 MNO PQR 14 5 requirements: 1. The third string should only be 10 or 12 2. The fourth string should only be 2 or 3 3. Prinnt... (1 Reply)
Discussion started by: kingpeejay
1 Replies

7. Shell Programming and Scripting

Removing empty lines(space) between two lines containing strings

Hi, Please provide shell script to Remove empty lines(space) between two lines containing strings in a file. Input File : A1/EXT "BAP_BSC6/07B/00" 844 090602 1605 RXOCF-465 PDTR11 1 SITE ON BATTERY A2/EXT... (3 Replies)
Discussion started by: sudhakaryadav
3 Replies

8. Shell Programming and Scripting

Print all the lines between 2 specified strings

Hi All, I have a file in which i want to print all the lines between 2 defined strings. Ex- I have file with data as follows STEP1:- ----- has some 20 -30 lines of data STEP2:- ----- has some 20 -30 lines of data So i want to print those lines between STEP1 & STEP2. (line including STEP1)... (7 Replies)
Discussion started by: digitalrg
7 Replies

9. Shell Programming and Scripting

using AWK see the upper lines and lower lines of the strings??

Hi experts, You cool guys already given me the awk script below- awk '/9366109380/,printed==5 { ++printed; print; }' 2008-09-14.0.log Morever, i have one more things- when i awk 9366109380, i can also see the Upper 3 lines as well as below 5 lines of that string. Line 1.... (3 Replies)
Discussion started by: thepurple
3 Replies

10. Shell Programming and Scripting

How to print only lines in between two strings using awk

Hi, I want to print only lines in between two strings and not the strings using awk. Eg: OUTPUT top 2 bottom 1 left 0 right 0 page 66 END I want to print into a new file only top 2 bottom 1 left 0... (4 Replies)
Discussion started by: jisha
4 Replies
Login or Register to Ask a Question