[CentOS] Scripting help please....
Les Mikesell
lesmikesell at gmail.com
Wed Oct 28 20:05:56 UTC 2009
m.roth at 5-cent.us wrote:
>> Need a scripting help to sort out a list and list all the duplicate lines.
>>
>> My data looks somethings like this
>>
>> host6:dev406mum.dd.mum.test.com:22:11:11:no
>> host7:dev258mum.dd.mum.test.com:36:17:19:no
>> host7:dev258mum.dd.mum.test.com:36:17:19:no
>> host17:dev258mum.dd.mum.test.com:31:17:19:no
>> host12:dev258mum.dd.mum.test.com:41:17:19:no
>> host2:dev258mum.dd.mum.test.com:36:17:19:no
>> host4:dev258mum.dd.mum.test.com:41:17:19:no
>> host4:dev258mum.dd.mum.test.com:45:17:19:no
>> host4:dev258mum.dd.mum.test.com:36:17:19:no
>>
>> I need to sort this list and print all the lines where column 3 has a
>> duplicate entry.
>>
>> I need to print the whole line, if a duplicate entry exists in column 3.
>>
>> I tried using a combination of "sort" and "uniq" but was not successful.
>
> list.awk
> BEGIN {
> FS=":";
> }
> { if ( $3 == last ) {
>
> print $0;
> }
> last = $3;
> }
>
> sort <file> | awk -f list.awk
>
> mark "*how* long an awk script would you like?"
This doesn't print the first of the duplicates. Also, the question
wasn't clear as to whether every line with matching 3rd fields should be
printed or just ones where the others or previous fields matched (but
the sort options could control that).
--
Les Mikesell
lesmikesell at gmail.com
More information about the CentOS
mailing list