shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Comando para eliminar duplicatas não sequenciais


From: Marcio Gil
Subject: Re: [shell-script] Comando para eliminar duplicatas não sequenciais
Date: Thu, 12 Nov 2009 14:16:01 -0200

> -----Original Message-----
> From: Julio C. Neves
> 
> Sendo que o cat teste em todos os testes que vc fez era 
> desnecessário. Em
> nenhum caso precisava/deveria ter sido usado. Experimente p. 
> ex. fazer:
> 
> $ time sort -u teste | wc -l
> 

De qualquer forma eu refiz os testes:

$ time uniq teste | wc -l
93601
real    0m0.617s

$ time sort -u teste | wc -l
36070
real    0m0.363s

(estes dois não fazem o que eu quero, mas posso comparar o tempo)

$ time cat -n teste | sort -k2 -u | sort -n | cut -f2- | wc -l
36070
real    0m1.502s

$ time awk '{ if (!visto[$0]) print; visto[$0] = 1; }' teste | wc -l
36070
real    0m0.395s

$ time awk '{ if (!visto[$0]) { print; visto[$0] = 1; } }' teste |
wc -l
36070
real    0m0.361s

No último teste eu economizei uns poucos milissegundos ao evitar a
re-atribuição desnecessária do "map" 'visto'.

Um abraço a todos.

Marcio Gil.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]