Extract lines with specific words with addition 2 lines before and after


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Extract lines with specific words with addition 2 lines before and after
# 1  
Old 07-02-2012
Extract lines with specific words with addition 2 lines before and after

Dear all,

Greetings.

I would like to ask for your help to extract lines with specific words in addition 2 lines before and after these lines by using awk or sed.

For example, the input file is:

Code:
1 ak1 abc1.0
1 ak2 abc1.0
1 ak3 abc1.0
1 ak4 abc1.0
1 ak5 abc1.1
1 ak6 abc1.1
1 ak7 abc1.1
1 ak8 abc1.1
1 ak9 abc1.1
1 ak10 abc1.1
1 ak11 abc1.2
1 ak12 abc1.2
1 ak13 abc1.2
1 ak14 abc1.2
1 ak15 abc1.2

How can I extract the lines as below:

Code:
1 ak3 abc1.0
1 ak4 abc1.0
1 ak5 abc1.1
1 ak6 abc1.1
1 ak7 abc1.1
1 ak8 abc1.1
1 ak9 abc1.1
1 ak10 abc1.1
1 ak11 abc1.2
1 ak12 abc1.2

I truly appreciate your advice and helps. Thank you very much in advance. Hoping to hear a reply from you.

Best regards,
Amanda

Moderator's Comments:
Mod Comment Please use code tags next time for your code and data.
# 2  
Old 07-02-2012
What OS (type of UNIX)?
# 3  
Old 07-02-2012
Dear jim mcnamara,

Sorry... Is x86_64 GNU/Linux the answer for your question?

I am sorry if I did not answer the questions, I am new in this field.

Thank you very much.

Amanda
# 4  
Old 07-02-2012
@amanda, your expected output shows, just a paragraph printing .. If yes, try the below ..
Code:
$ nawk '/ak3/,/ak12/' infile
1 ak3 abc1.0
1 ak4 abc1.0
1 ak5 abc1.1
1 ak6 abc1.1
1 ak7 abc1.1
1 ak8 abc1.1
1 ak9 abc1.1
1 ak10 abc1.1
1 ak11 abc1.2
1 ak12 abc1.2
$

If question varies, post the expected output along with your tries to achieve ..
# 5  
Old 07-02-2012
Hi Jayan Jay,

Thank you very much for your reply.

Firstly I would like to apologize about my unclear example. Actually I have a big dataset which I need to extract lines with specific words from the 3rd column which is "abc1.1" from this example together with 2 lines above and 2 lines below. This pattern will loop for the whole dataset.

Is there any possibility?

Thank you very much in advance.

Best wishes,
Amanda
# 6  
Old 07-02-2012
Gnu grep has -C option

try this

Code:
grep -C 2 "abc1.1" input.txt

This User Gave Thanks to itkamaraj For This Post:
# 7  
Old 07-02-2012
Hi Itkamaraj,

Thank you very much for your help. It works perfectly.

Thanks again.

Amanda
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Extract specific lines based on another file

I have a folder containing text files. I need to extract specific lines from the files of this folder based on another file input.txt. How can I do this with awk/sed? file1 ARG 81.9 8 81.9 0 LEU 27.1 9 27.1 0 PHE .0 10 .0 0 ASP 59.8 11 59.8 0 ASN 27.6 12 27.6 0 ALA .0 13 .0 0... (5 Replies)
Discussion started by: alanmathew84
5 Replies

2. Shell Programming and Scripting

ksh sed - Extract specific lines with mulitple occurance of interesting lines

Data file example I look for primary and * to isolate the interesting slot number. slot=`sed '/^primary$/,/\*/!d' filename | tail -1 | sed s'/*//' | awk '{print $1" "$2}'` Now I want to get the Touch line for only the associate slot number, in this case, because the asterisk... (2 Replies)
Discussion started by: popeye
2 Replies

3. Shell Programming and Scripting

Extract lines with unique value using a specific column

Hi there, I need a help with extracting data from tab delimited file which look like this #CHROM POS ID REF ALT Human Cow Dog Mouse Lizard chr2 3033 . G C 0/0 0/0 0/0 1/1 0/0 chr3 35040 . G T 0/0 0/0 ./. 1/1 0/1 chr4 60584 . T G 1/1 1/1 0/1 1/1 0/0 chr10 7147815 . G A 0/0 1/1 0/0 0/0... (9 Replies)
Discussion started by: houkto
9 Replies

4. Shell Programming and Scripting

how to print specific lines or words

Hi, Please have a look on below records. STG_HCM_STATE_DIS_TAX_TBL.1207.Xfm: The value of the row is: EMPLID = 220677 COMPANY = 919 BALANCE_ID = 0 BALANCE_YEAR = 2012 STG_HCM_STATE_DIS_TAX_TBL.1207.Xfm: ORA-00001: unique constraint (SYSADM.PS_TAX_BALANCE) violated ... (4 Replies)
Discussion started by: Sachin Lakka
4 Replies

5. UNIX Desktop Questions & Answers

Display a specific words from a multiple lines

well, i am so not familiar with this kind of things but i am gonna explain extactly what i am looking for so hopfully someone can figure it out :) i have a command that shows memory usage besides the process name, for example(the command output): 500 kb process_1 600 kb process_2 700 kb... (4 Replies)
Discussion started by: Portabello
4 Replies

6. Shell Programming and Scripting

Extract specific lines from a file

Hi, I have a file which contains DDL statements- CREATE TABLE, CREATE INDEX, ALTER TABLE etc. I have to only pick CREATE TABLE statements from the file- Source : ---------------------------------------------- --DDL for table abc -------------------------------------------- CREATE TABLE... (4 Replies)
Discussion started by: newb
4 Replies

7. Shell Programming and Scripting

Keep lines with specific words up in an order

I hava a file with following data: number|CREDIT_ID|NULL date|SYS_CREATION_DATE|NULL varchar2|GGS_COMMIT_CHAR|NULL varchar2|GGS_OP_TYPE|NULL number|GGS_SCN|NULL| number|GGS_LOG_SEQ|NULL number|GGS_LOG_POS|NULL number|GGS_ORACREC_SCN|NULL varchar2|BATCH_ID|NULL char|GGS_IMAGE_TYPE|NULL ... (6 Replies)
Discussion started by: kolesunil
6 Replies

8. UNIX for Dummies Questions & Answers

Extract specific lines for graphing

Hello, I have a very large text file with about 2 million lines. Each of the lines starts like.. SNP_12345678 A 1212, 121, 343, ... SNP_12345678 B 4567, 567, 454, ... and so on. I want to extract specific SNPs and plot them by GNUplot or excel. The file is too large to be opened by text... (1 Reply)
Discussion started by: genehunter
1 Replies

9. Shell Programming and Scripting

Ignore some lines with specific words from file comparison

Hi all, I need help in doing this scenario. I have two files with multiple lines. I want to compare these two files but ignoring the lines which have words like Tran, Loc, Addr, Charge. Also if i have a word Credit in line, i want to tokenize (i.e string after character " ... (2 Replies)
Discussion started by: jakSun8
2 Replies

10. UNIX for Dummies Questions & Answers

extract specific lines from file

hi, how would i extract a range of lines in a file by using the line number? ex: file contains: 1 title 2 i want 3 this part 4 to be taken out 5 from this file 6 and sent to 7 another file 8 not needed 9 end of file In this case, i want to copy line number 2 to 7 on a new... (2 Replies)
Discussion started by: apalex
2 Replies
Login or Register to Ask a Question

Featured Tech Videos