Subject: Re: bug#10287: [wishlist] uniq can remove non adjacent lines

From: Pádraig Brady <[email-masked]>
Date: Tue, 13 Dec 2011 08:45:24 +0000

On 12/12/2011 10:54 PM, Stéphane Blondon wrote:
> Tool: uniq
> Priority: wishlist
> 
> Hello,
> 
> I think `uniq` should have an additional option (for example -a,
> --all) to remove same lines but not adjacent.
> 
> The man page explains a workaround based on `sort` but it can be
> complex to use. Few weeks ago, I had to `uniq`-ize random numbers and
> the sort couldn't really work. Fortunately, the order was not
> important so using `sort | uniq | sort --random-sort` was an
> acceptable solution. I imagine cases based on other tools like `top`
> could be a problem too.
> 
> If you are interested, I could try to provide a patch. (I have learnt
> C but I don't use it today.)
> 
> I don't think the increase of memory use is a problem today, so a
> warning in the manpage should be enought.

Well that would increase the complexity of `uniq` a _lot_
http://lists.gnu.org/archive/html/coreutils/2011-11/msg00018.html
For that reason I would be against adding such a feature.
Note improving the field selection of `uniq` is appropriate,
and would make DSU solutions using sort, easier to implement.

cheers,
Pádraig.