ループで複数のコマンドの時間を取得する方法


12

私はこのコマンドを持っています:

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

だから、command1およびcommand2実行され、私は本当の、ユーザとコンソールに印刷sysの時間を取得しています。

しかし、私はそれcommand1; command2;が10回ループされ、次に2つのコマンドに使用される時間を取得したいです。

回答:


13

簡単なfor-loop を書くことができます

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

ループのbash代わりに使用したことに注意しshてください。


13
bashでは、次のことができますtime (for i in {1..10}; do sleep 1 ; done)
frostschutz

1
@frostschutz:あなたの方がはるかに良い答えのようです。回答として投稿してください。
クリスページ

14

zshの場合:

time (repeat 10 {cmd1; cmd2})

zshさんはrepeatから継承されますcsh

tcsh

time repeat 10 eval 'cmd1; cmd2'

各反復の時間と最後の全体の時間を提供します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.