วิธีรับเวลาของหลายคำสั่งด้วยการวนซ้ำ


12

ฉันมีคำสั่งนี้:

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

ดังนั้นcommand1และcommand2จะถูกดำเนินการและฉันได้รับจริงผู้ใช้และเวลาที่พิมพ์บนคอนโซล

แต่ฉันต้องการที่command1; command2;จะวนซ้ำ 10 ครั้งจากนั้นฉันต้องการได้เวลาที่ใช้สำหรับสองคำสั่ง

คำตอบ:


13

คุณสามารถเขียนง่ายfor-loop

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

โปรดทราบว่าฉันใช้bashแทนshลูป


13
ในทุบตีคุณสามารถเพียงแค่time (for i in {1..10}; do sleep 1 ; done)
frostschutz

1
@ frostschutz: คุณดูเหมือนคำตอบที่ดีกว่ามาก กรุณาโพสต์มันเป็นคำตอบ
Chris Page

14

ด้วย zsh:

time (repeat 10 {cmd1; cmd2})

zsh's จะรับมาจากrepeatcsh

ด้วยtcsh:

time repeat 10 eval 'cmd1; cmd2'

จะให้เวลาสำหรับการทำซ้ำแต่ละครั้งและเวลาโดยรวมในตอนท้าย

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.