Содержание
Описание
Утилита time
запускает заданную программу и, по окончании выполнения, выводит информацию о затраченном на выполнение времени.
В результате выводится три блока данных:
real
– реальное (общее) время выполнения;
user
– время CPU, которое занял пользователь;
sys
– время CPU, занятое системой.
Ключей у утилиты немного:
-o
– записывать информацию в файл, вместо вывода в stderr
;
-a
– если используется ключ -o
– то программа будет дописывать данные в конец файла, а не перезаписывать его;
-h
– выводить информацию в “human friendly” виде;
-l
– выводит информацию об resourse usage (rusage)
;
-p
– выводит результат в POSIX.2 формате (каждое значение в новой строке).
Возможные ошибки
При использовании команды без указания полного пути – возможна ошибка вида:
# time -h ping ya.ru bash: -h: command not found
Решение – указывать полный путь:
# which time /usr/bin/time # /usr/bin/time -h ping ya.ru ... 0.99s real 0.00s user 0.00s sys
Примеры выполнения
Записывать вывод в файл:
# /usr/bin/time -o time.log ping ya.ru ... # cat time.log 1.73 real 0.00 user 0.00 sys
Выводить информацию о времени (секунды, минуты и т.д.):
# /usr/bin/time -h ping ya.ru ... 0.64s real 0.00s user 0.00s sys
Выводить полную информацию:
# /usr/bin/time -l ping ya.ru ... 0.91 real 0.00 user 0.00 sys 0 maximum resident set size 0 average shared memory size 0 average unshared data size 0 average unshared stack size 113 page reclaims 0 page faults 0 swaps 0 block input operations 0 block output operations 3 messages sent 3 messages received 1 signals received 6 voluntary context switches 3 involuntary context switches
Отображать или записывать результат в POSIX-формате:
# /usr/bin/time -p ping ya.ru ... real 0.59 user 0.00 sys 0.00