Simplemente llame timessin argumentos al salir de su script.
Con ksho zsh, también puede usar timeen su lugar. Con zsh, timetambién le dará el tiempo de reloj de pared además del tiempo de CPU del usuario y del sistema .
Para preservar el estado de salida de su script, puede hacerlo:
ret=$?; times; exit "$ret"
O también puede agregar una trampa en EXIT:
trap times EXIT
De esa manera, se llamarán los tiempos cada vez que el shell salga y se conservará el estado de salida.
$ 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
También tenga en cuenta que todos bash, kshy zshtener una $SECONDSvariable especial que automáticamente se incrementa cada segundo. En ambos zshy ksh93, esa variable también se puede hacer punto flotante (con typeset -F SECONDS) para obtener más precisión. Este es solo el tiempo del reloj de pared, no el tiempo de la CPU.