Como obter o tempo de vários comandos com um loop


12

Eu tenho este comando:

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

Então, command1e command2é executado e eu recebo o real, de usuário e tempo sys impressa no console.

Mas eu quero que command1; command2;seja repetido 10 vezes e depois quero obter o tempo que é usado para os dois comandos.

Respostas:


13

Você pode escrever um forloop simples

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

Note que eu usei em bashvez do shloop.


13
No bash, você pode apenastime (for i in {1..10}; do sleep 1 ; done)
frostschutz

1
@frostschutz: A sua parece ser uma resposta muito melhor. Por favor, publique como resposta.
Chris Page.

14

Com zsh:

time (repeat 10 {cmd1; cmd2})

zsh's repeaté herdado csh.

Com tcsh:

time repeat 10 eval 'cmd1; cmd2'

Daria a você tempo para cada iteração e o tempo total no final.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.