Получить статистику времени возврата с помощью команды времени Linux

Команда time является одной из менее известных команд Linux, но ее можно использовать, чтобы показать, сколько времени занимает выполнение команды.

Это полезно, если вы разработчик и хотите проверить производительность своей программы или скрипта.

В этом руководстве будут перечислены основные переключатели, которые вы будете использовать с командой time, а также их значения.

Как использовать команду времени

Синтаксис команды времени следующий:

 время 

Например, вы можете запустить команду ls, чтобы вывести список всех файлов в папке в длинном формате вместе с командой time.

 time ls -l 

Результаты команды time будут следующими:

 реальный 0m0.177s 
пользователь 0m0.156s
sys 0m0.020s

Показанная статистика показывает общее время, затраченное на выполнение команды, количество времени, проведенное в пользовательском режиме, и количество времени, проведенное в режиме ядра.

Если у вас есть программа, которую вы написали, и вы хотите работать над производительностью, вы можете запускать ее вместе с командой time снова и снова и пытаться улучшить статистику.

По умолчанию выходные данные отображаются в конце программы, но, возможно, вы хотите, чтобы выходные данные переходили в файл.

Для вывода формата в файл используйте следующий синтаксис:

 time -o 
time --output =

Все переключатели для команды времени должны быть указаны до команды, которую вы хотите запустить.

Если вы настраиваете производительность, вы можете добавлять вывод команды времени в один и тот же файл снова и снова, чтобы вы могли видеть тренд.

Для этого используйте вместо этого следующий синтаксис:

 время -a 
время --append

Форматирование вывода команды времени

По умолчанию вывод выглядит следующим образом:

 реальный 0m0.177s 
пользователь 0m0.156s
sys 0m0.020s

Существует большое количество параметров форматирования, как показано в следующем списке

  • C – Имя и аргументы командной строки, используемые
  • D – средний размер неразделенной области данных процесса в килобайтах
  • E – истекшее время в формате часов
  • F – Количество ошибок страницы
  • I – Количество входов файловой системы процессом
  • K – среднее суммарное использование памяти процессом в килобайтах
  • M – максимальный размер резидентной установки процесса в течение жизни в килобайтах
  • O – Количество выходов файловой системы процессом
  • P – процент CPU, полученный заданием
  • R – количество мелких или восстанавливаемых ошибок страницы
  • S – общее количество секунд процессора, используемых системой в режиме ядра
  • U – общее количество секунд процессора, используемых в пользовательском режиме
  • W – количество раз, когда процесс был выгружен из основной памяти
  • X – среднее количество общего текста в процессе
  • Z – размер страницы системы в килобайтах
  • c – Количество раз, когда процесс был переключен контекст
  • e – истекшее реальное время, использованное процессом в секундах
  • k – количество сигналов, доставленных в процесс
  • p – средний размер неразделенного стека процесса в килобайтах
  • r – количество сообщений сокета, полученных процессом
  • s – количество сообщений сокета, отправленных процессом
  • t – средний размер резидентного набора процесса в килобайтах
  • w – количество времени, когда процесс добровольно переключался
  • x – выход из команды

Вы можете использовать переключатели форматирования следующим образом:

 time -f "Истекшее время =% E, входы% I, выходы% O" 

Вывод для приведенной выше команды будет выглядеть примерно так:

 Истекшее время = 0:01:00, входы 2, выходы 1 

Вы можете смешивать и сочетать переключатели по мере необходимости.

Если вы хотите добавить новую строку как часть строки формата, используйте символ новой строки следующим образом:

 time -f "Истекшее время =% E \ n Входы% I \ n Выходы% O" 

Резюме

Чтобы узнать больше о команде time, прочитайте страницу руководства Linux, выполнив следующую команду:

 человек время 

Переключатель формата не работает сразу в Ubuntu. Вам нужно выполнить команду следующим образом:

/usr/bin/time 

Оцените статью
Solutics.ru
Добавить комментарий