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

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

Re: [shell-script] Comparações de valo res entre colunas de linhas dif


From: itamarnet
Subject: Re: [shell-script] Comparações de valo res entre colunas de linhas diferentes
Date: 21 Jul 2016 16:39:46 -0700

Caro Darlon

Só por curiosidade eu comparei a sugestão do mestre Julio, a que você adotou e a minha sugestão em awk.

Num primeiro momento fornecendo a valor 10 diretamente e obtive esses tempos num note já bem velhinho.

$ time seq 0 10 | cat entrada.txt - | sort -nu
real    0m0.013s
user    0m0.000s
sys    0m0.000s

$ time join -a 1 <(seq 0 10 | sort) <(sort entrada.txt) | sort -n
real    0m0.032s
user    0m0.004s
sys    0m0.004s

$ time awk 'BEGIN {X=0};{if(X==$1) {print} else { for (Y=X;Y<$1;Y++) {print Y}; print};X=$1+1}' entrada.txt
real    0m0.006s
user    0m0.000s
sys    0m0.000s


Depois com o script captando o valor máximo automaticamente, no caso sendo o 10

$ time seq 0 $(tail -1 entrada.txt | cut -f1 -d' ') | cat entrada.txt - | sort -n
real    0m0.027s
user    0m0.000s
sys    0m0.004s

$ time join -a 1 <( seq 0 $(awk 'END {print $1}' entrada.txt) | sort ) <( sort entrada.txt ) | sort -n
real    0m0.053s
user    0m0.004s
sys    0m0.004s

O script em awk não muda, pois não depende do limite superior, mas repeti e obtive
real    0m0.007s
user    0m0.000s
sys    0m0.000s


Se puder fazer essa comparação a título de curiosidade, fico agradecido.
Mas de antemão suponho que a diferença de velocidade esteja no uso de pipes e múltiplos comandos.

Desde já agradeço
[]'s
Itamar
 

reply via email to

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