В Linux команда time
оценивает по времени производительность любой задачи, выводя после её завершения затраченное время: реальное, пользователя и системы.
Содержание
Синтаксис
time [опции] команда [аргументы]
Опции
- -p
- Вывод значения времени в формате Posix
- -v
- Получение подробной сводки о времени выполнения
Использование команды time в Linux
Простой пример
oleg@mobile:~:$ time sleep 3
real 0m3,003s
user 0m0,002s
sys 0m0,001s
oleg@mobile:~:$
В приведенном выше примере sleep 3
было использовано для создания фиктивного задания, которое длится 3 секунды.
oleg@mobile:~:$ time -p sleep 3
real 3,00
user 0,00
sys 0,00
oleg@mobile:~:$
С опцией -p
время было выведено в формате Posix.
Время, необходимое для загрузки файла
В следующем примере мы собираемся измерить время, необходимое для загрузки ядра Linux с помощью инструмента wget
:
oleg@mobile:~:$ time wget https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.0.7.tar.xzux-6.0.7.tar.xz
--2022-11-10 16:45:32-- https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.0.7.tar.xz
Загружен сертификат CA «/etc/ssl/certs/ca-certificates.crt»
Распознаётся cdn.kernel.org (cdn.kernel.org)… 146.75.1.176, 2a04:4e42:70::432
Подключение к cdn.kernel.org (cdn.kernel.org)|146.75.1.176|:443... соединение установлено.
HTTP-запрос отправлен. Ожидание ответа… 200 OK
Длина: 133884956 (128M) [application/x-xz]
Сохранение в: «linux-6.0.7.tar.xz»
linux-6.0.7.tar.xz 100%[=============================================================>] 127,68M 2,68MB/s за 51s
2022-11-10 16:46:24 (2,51 MB/s) - «linux-6.0.7.tar.xz» сохранён [133884956/133884956]
real 0m51,651s
user 0m2,397s
sys 0m2,151s
oleg@mobile:~:$
В выводе:
- real
- Время от начала до конца вызова. Это время с момента нажатия клавиши Enter до момента завершения команды
wget
- user
- Количество процессорного времени, проведенного в пользовательском режиме
- sys
- Количество процессорного времени, затрачиваемого в режиме ядра
Заключение
Использование команды time
в Linux полезно для тестирования производительности ваших скриптов и команд. Например, если у вас есть два разных сценария, выполняющих одну и ту же работу, и вы хотите узнать, какой из них работает лучше, вы можете использовать эту утилиту для определения продолжительности выполнения каждого сценария.