Bash How to Measure Execution Time
The command “time” report an execution time information
time sleep 1
Output:
real 0m1.001s
user 0m0.000s
sys 0m0.001s
Description:
- Real-time from start to finish
- User – the amount of CPU time spent in use mode. It is the actual CPU time used in executing the process
- Sys – the amount of CPU time spent in kernel
You can measure execution time by subtraction start date and end date:
start=`date +%s` commands... end=`date +%s` echo Execution time was `expr $end - $start` seconds.
If you need to have more accurate measures:
start=`date +%s%N` commands... end=`date +%s%N` echo Execution time was `expr $end - $start` nanoseconds.
Adding %N to date +%s causes nanosecond accuracy.