Sprawdziłem to , ale dostarczone rozwiązanie nie działało dla mnie.
Za pomocą daty mogę uzyskać czas wykonania w sekundach:
T="$(date +%s)"
#some work here
T="$(($(date +%s)-T))"
echo "execution time (secs) ${T}"
Jednak gdy spróbuję:
T="$(date +%s%N)"
#some work here
T="$(($(date +%s%N)-T))"
Dodając% N (jak wyżej) do daty, aby uzyskać precyzję w sekundach, otrzymuję następujący błąd: -bash: 1369320760N: wartość zbyt duża dla podstawy (token błędu to „1369320760N”)
Czy ktoś wie, jak mierzyć czas wykonywania w milisekundach przy użyciu bash w systemie Mac OS X?
# some work here
trybu wspólnego otrzymuję czasy od 0,2 do 0,3 sekundy - co powinno wynosić zero (lub przynajmniej stałą), aby osiągnąć cel. Natomiast/usr/bin/time usleep 50000
daje uzasadniony czas stabilny 0,05 +/- 0,01 sek. (Testowane tylko w systemie Linux, nie wiem, czy / OSR / bin / time i / lub usleep jest dostępny w OSX.)