Cómo obtener el tiempo de varios comandos con un bucle


12

Tengo este comando:

time -p sh -c 'command1; command2;'

Así command1, y command2se ejecuta y consigo el verdadero, el usuario sys y hora impresa en la consola.

Pero quiero que command1; command2;se repita 10 veces y luego quiero obtener el tiempo que se usa para los dos comandos.

Respuestas:


13

Puedes escribir un forbucle simple

 time -p bash -c "for (( i=0; i<10; i++ )); do command1; command2; done;"

Tenga en cuenta que usé en bashlugar de shpara el bucle.


13
En bash puedes simplementetime (for i in {1..10}; do sleep 1 ; done)
frostschutz

1
@frostschutz: la suya parece una respuesta mucho mejor. Por favor publíquelo como respuesta.
Chris Page

14

Con zsh:

time (repeat 10 {cmd1; cmd2})

zsh's repeatse hereda de csh.

Con tcsh:

time repeat 10 eval 'cmd1; cmd2'

Te daría el tiempo para cada iteración y el tiempo total al final.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.