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

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

Re: [shell-script] Qual o FOR mais rápido


From: Arthur Domingos Neto
Subject: Re: [shell-script] Qual o FOR mais rápido
Date: Mon, 16 Apr 2007 17:01:12 -0300

Srs,

Estive fazendo alguns teste e obtive um resultado inverso do que exposto
conforme abaixo.
################################################################
[tiprd09@hxas01 curso]$ cat loop
#!/bin/sh
for ((i=1; i<=99999; i++))
do
if [ $i == 99999 ]
then
echo "Executando ultimo laco"
fi
done
[tiprd09@hxas01 curso]$ time ./loop
Executando ultimo laco

real    0m2.219s
user    0m2.175s
sys     0m0.039s
################################################################

################################################################

[tiprd09@hxas01 curso]$ cat loop1
#!/bin/sh
for i in $(seq 99999)
do
if [ $i == 99999 ]
then
echo Executando ultimo laco
fi
done
[tiprd09@hxas01 curso]$ time ./loop1
Executando ultimo laco

real    0m9.425s
user    0m9.384s
sys     0m0.042s
[tiprd09@hxas01 curso]$
################################################################

Agora fiquei um tanto confuso pois gostaria de saber o pq dessa diferença.

Em 13/04/07, Amador Pahim <address@hidden> escreveu:
>
>   Estava eu aqui fazendo meus .sh, e me deparei com uma dúvida: Qual é a
> forma mais rápida de execução do comando FOR. Cheguei a tais resultados:
>
> Script teste01.sh:
> ####################
> for ((i=1; i<=99999; i++))
> do
> if [ $i == 99999 ]
> then
> echo Executando ultimo laço
> fi
> done
> ####################
>
> root@GerRedes:~# time ./teste01.sh
> Executando ultimo laço
>
> real 0m4.037s
> user 0m3.604s
> sys 0m0.172s
>
> Script teste02.sh:
> ####################
> for i in $(seq 99999)
> do
> if [ $i == 99999 ]
> then
> echo Executando ultimo laço
> fi
> done
> ####################
>
> root@GerRedes:~# time ./teste02.sh
> Executando ultimo laço
>
> real 0m2.701s
> user 0m2.432s
> sys 0m0.176s
>
> Esses resultados me deixaram um pouco confuso, pois imaginei que meu
> script 01, por utilizar um incremento nativo do FOR fosse ser mais
> rápido do que o script 02, que usa uma chamada a um comando externo.
> Alguem poderia me ajudar a interpretar melhor esses resultados?
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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