![]() |
|
|
google unix.com
|
|||||||
| Forums | Register | Forum Rules | Links | Albums | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !! |
More UNIX and Linux Forum Topics You Might Find Helpful
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| using uniq and awk?? | amatuer_lee_3 | Shell Programming and Scripting | 13 | 05-17-2008 02:10 PM |
| How to uniq third field in a file | babycakes | UNIX for Dummies Questions & Answers | 1 | 02-01-2008 03:52 AM |
| help on UniQ | vishal_ranjan | HP-UX | 0 | 06-21-2007 11:33 AM |
| Moving Part of a field to another field using AWK | rjsha1 | Shell Programming and Scripting | 5 | 08-04-2006 06:39 AM |
| sort/uniq | jimmyflip | UNIX for Dummies Questions & Answers | 3 | 10-17-2002 06:09 AM |
![]() |
|
|
LinkBack | Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Uniq using only the first field
Hi all,
I have a file that contains a list of codes (shown below). I want to 'uniq' the file using only the first field. Anyone know an easy way of doing it? Cheers, Dave ##### Input File ##### 1xr1 1xws 1yxt 1yxu 1yxv 1yxx 2o3p 2o63 2o64 2o65 1xr1 1xws 1yxt 1yxv 1yxx 2o3p 2o63 2o64 2o65 1xr1 1yxt 1yxv 1yxx 2o3p 2o63 2o64 2o65 1y8y 2c68 2c69 2c6i 2c6k 2c6m 2c6o 1y8y 2c69 2c6i 2c6k 1zlt 2br1 2brb 2brn 2bro 2c3k 2cgu 2cgv 2cgx 1zlt 2br1 2brb 2brn 2bro 2cgu 2cgv 2cgx 1zlt 2br1 2brb 2brn 2bro 2cgv 2cgx 1zlt 2br1 2brb 2brn 2bro 2cgx 1zlt 2br1 2brb 2bro ##### Desired Output File ####### 1xr1 1xws 1yxt 1yxu 1yxv 1yxx 2o3p 2o63 2o64 2o65 1y8y 2c68 2c69 2c6i 2c6k 2c6m 2c6o 1zlt 2br1 2brb 2brn 2bro 2c3k 2cgu 2cgv 2cgx |
|
|||||
|
Quote:
$1 is the first field. $0 is the entire record. So... Basic jist is that you run through each record, and add it to an array (using the first field as a reference) IF the length of the record is greater than the current array entry: Code:
if ( length($0) > length(a[$1]) ){a[$1]=$0}}
Code:
{for (i in a){print a[i]}}'
|
![]() |
| Bookmarks |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|