Chỉ cần gọi times
mà không có đối số khi thoát khỏi kịch bản của bạn.
Với ksh
hoặc zsh
, bạn cũng có thể sử dụng time
thay thế. Với zsh
, time
cũng sẽ cung cấp cho bạn thời gian đồng hồ treo tường ngoài thời gian CPU của người dùng và hệ thống .
Để duy trì trạng thái thoát của tập lệnh của bạn, bạn có thể tạo nó:
ret=$?; times; exit "$ret"
Hoặc bạn cũng có thể thêm một cái bẫy vào EXIT
:
trap times EXIT
Bằng cách đó, thời gian sẽ được gọi bất cứ khi nào vỏ thoát ra và trạng thái thoát sẽ được giữ nguyên.
$ bash -c 'trap times EXIT; : {1..1000000}'
0m0.932s 0m0.028s
0m0.000s 0m0.000s
$ zsh -c 'trap time EXIT; : {1..1000000}'
shell 0.67s user 0.01s system 100% cpu 0.677 total
children 0.00s user 0.00s system 0% cpu 0.677 total
Cũng lưu ý rằng tất cả bash
, ksh
và zsh
có một $SECONDS
biến đặc biệt tự động được tăng lên mỗi giây. Trong cả hai zsh
và ksh93
, biến đó cũng có thể được tạo dấu phẩy động (với typeset -F SECONDS
) để có độ chính xác cao hơn. Đây chỉ là thời gian đồng hồ treo tường, không phải thời gian CPU.