Vuoi inserire questo codice nel tuo script o farlo dal processo che avvia lo script?
Per quest'ultimo, puoi usare la parola riservata "time" e quindi analizzare ciò che restituisce per ottenere quanto tempo impiega uno script.
Se si desidera eseguire questa operazione all'interno di uno script, è possibile impostare la variabile SECONDS su zero e ogni volta successiva che si fa riferimento a tale variabile verrà aggiornata per essere il numero di secondi trascorsi. Quindi, puoi inserire "SECONDS=0" proprio all'inizio del tuo script, e ogni volta che avrai bisogno del tempo trascorso sarà nella variabile SECONDS.
Puoi anche usare il trucco $SECONDS sulla riga di comando, ad esempio:
$ SECONDS=0; sleep 5 ; echo "that took approximately $SECONDS seconds"
La parola riservata al tempo e la variabile SECONDS sono entrambe documentate nella pagina man di bash.
Funziona in Bash e anche in Zsh:
# Set time format to seconds
TIMEFORMAT=%R
# Time a process
PROC_TIME=$(time (insert command here >/dev/null 2>&1) 2>&1)
echo $PROC_TIME
- I primi due reindirizzamenti nascondono l'output del tuo processo ">/dev/null 2>&1"
- L'ultimo reindirizzamento è necessario perché "time" stampa l'ora su stderr