Come ottenere il tempo di più comandi con un ciclo


12

Ho questo comando:

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

Quindi, command1e command2viene eseguito e ottengo il vero, l'utente e il tempo SYS stampata sulla console.

Ma voglio che command1; command2;sia in loop 10 volte e quindi voglio ottenere il tempo che viene utilizzato per i due comandi.

Risposte:


13

Puoi scrivere un semplice for-loop

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

Nota che ho usato bashinvece che shper il ciclo.


13
A bash puoi solotime (for i in {1..10}; do sleep 1 ; done)
frostschutz il

1
@frostschutz: la tua sembra una risposta molto migliore. Si prega di pubblicarlo come risposta.
Chris Page

14

Con zsh:

time (repeat 10 {cmd1; cmd2})

zsh's repeatè ereditato da csh.

Con tcsh:

time repeat 10 eval 'cmd1; cmd2'

Ti darebbe il tempo per ogni iterazione e il tempo complessivo alla fine.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.