Remove duplicate line on condition


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Remove duplicate line on condition
# 8  
Old 03-30-2012
Code:
[user@host1: /tmp] cat x.txt
5 bla bla  1
5 bla bla  1
9 bla bla 3
78 bla bla 1
83 bla bla 2
83 bla bla 2
130 bla bla 1
83 bla bla 2
187 bla bla 0
[user@host1: /tmp] awk '{if ($2$3$4!=lastline) {print} lastline=$2$3$4;}' x.txt
5 bla bla  1
9 bla bla 3
78 bla bla 1
83 bla bla 2
130 bla bla 1
83 bla bla 2
187 bla bla 0

# 9  
Old 03-30-2012
Hi,
Sorry for the edit.

It seems to work half way.

For
Code:
83 2 
86 3 
90 2
94  2 
107 2
110  2

What I get is
Code:
83 2 
86  3 
90  2

The last line 90 2 should not have come, I should have had just the first two lines.

Thanks.
# 10  
Old 03-30-2012
For your example data? Well...
Quote:
In cases where there are no consecutive repetitions then there should be no change to the ouput.
# 11  
Old 03-30-2012
yes, because
Code:
90 bla bla 2
94 bla bla 2 
107 bla bla 2
110 bla bla 2

are all consecutive repetitions of 2. I think your logic will be perfect if you print the line only if the line before and after are not equal? but I am not sure how it will work for the first and last line.

Will that work?
# 12  
Old 03-30-2012
I missed " I wanna remove both (as many repeats) lines"...

Quote:
Originally Posted by jamie_123
are all consecutive repetitions of 2.
Which isn't the data or comment I was replying to, as you well know Smilie.
# 13  
Old 03-30-2012
I understand..sorry...do you think it is possible to make it work based on what I said?
# 14  
Old 03-30-2012
Try
Code:
awk '{if (lastline!="") { if ($2$3$4==lastline) {next} else {print}} lastline=$2$3$4}' x.txt

EDIT: nm, that's wrong
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Remove sections based on duplicate first line

Hi, I have a file with many sections in it. Each section is separated by a blank line. The first line of each section would determine if the section is duplicate or not. if the section is duplicate then remove the entire section from the file. below is the example of input and output.... (5 Replies)
Discussion started by: ahmedwaseem2000
5 Replies

2. Shell Programming and Scripting

Remove duplicate values with condition

Hi Gents, Please can you help me to get the desired output . In the first column I have some duplicate records, The condition is that all need to reject the duplicate record keeping the last occurrence. But the condition is. If the last occurrence is equal to value 14 or 98 in column 3 and... (2 Replies)
Discussion started by: jiam912
2 Replies

3. Shell Programming and Scripting

Remove duplicate line starting with a pattern

HI, I have the below input file /* ----------------- cmdsDlyStartFWJ -----------------*/ UNIX_JOB CMDS065J RUN ANY CMDNAME sleep 5 AGENT CMDSHP USER proddata RUN MON,TUE,WED,THU,FRI DELAYSUB 02:00 /* "Triggers daily file watcher jobs" */ ENVAR... (5 Replies)
Discussion started by: varun22486
5 Replies

4. Shell Programming and Scripting

Remove duplicate entries from the same line

Hello, I have a file which have several duplicate entries on the same line: File ID source 1 GM GF GM 2 GM GF GM GF GM GF GM GF GM GF 3 GM GF GM SF GM GF GM SF 4 FF FF FF FF 5 FF GM FF ... (2 Replies)
Discussion started by: nans
2 Replies

5. UNIX for Dummies Questions & Answers

Remove Duplicate Two Line Pairs?

So I have a bunch of files that look like this >gi|33332323 MMKCRGVIMVVEKVMKRDGRIVPFDESRIRWAVQ--- >gi|45235353 MMKCR----VEKMRDVFFDESIRWAVQ They go on...sequences are much longer but all in two line (fasta) format. I want to remove duplicate pairs of ID(GI) number and sequence. I tried... (12 Replies)
Discussion started by: bakere19
12 Replies

6. Shell Programming and Scripting

remove duplicate lines with condition

hi to all Does anyone know if there's a way to remove duplicate lines which we consider the same only if they have the first and the second column the same? For example I have : us2333 bbb 5 us2333 bbb 3 us2333 bbb 2 and I want to get us2333 bbb 10 The thing is I cannot... (2 Replies)
Discussion started by: vlm
2 Replies

7. Shell Programming and Scripting

remove of duplicate line from a file

I have a file a.txt having content like deepak ram sham deepram sita kumar I Want to delete the first line containing "deep" ... I tried using... grep -i 'deep' a.txt It gives me 2 rows...I want to delete the first one.. + need to know the command to delete the line from... (5 Replies)
Discussion started by: saluja.deepak
5 Replies

8. Shell Programming and Scripting

remove duplicate words in a line

Hi, Please help! I have a file having duplicate words in some line and I want to remove the duplicate words. The order of the words in the output file doesn't matter. INPUT_FILE pink_kite red_pen ball pink_kite ball yellow_flower white no white no cloud nine_pen pink cloud pink nine_pen... (6 Replies)
Discussion started by: sam_2921
6 Replies

9. UNIX for Dummies Questions & Answers

Remove duplicate entry in one line

Can anyone help me how can i print only the unique entry in a line? MI_AP MI_AP MI_CM MI_MF RC_NAP MBS_AP SF_RAN MBS_AP NT_CAR so that it will on output the one unique entry per line. MI_AP MI_CM MI_MF RC_NAP MBS_AP SF_RAN NT_CAR I can't find the same situation on the knowledge... (5 Replies)
Discussion started by: kharen11
5 Replies

10. UNIX for Dummies Questions & Answers

Remove Duplicate line

Hi, I have a scenario here where I have created a flatfile with the below mentioned information. File as you can see is dispalyed in three columns 1st column is FileNameString 2nd column is Report_Name (this has spaces) 3rd column is Flag Result file needed is, removal of duplicate... (1 Reply)
Discussion started by: Student37
1 Replies
Login or Register to Ask a Question