Как определить время выполнения команды с помощью Time

12 set 2022 1 min di lettura
Как определить время выполнения команды с помощью Time
Indice dei contenuti

Введение

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

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

Команда времени

Как Bash, так и Zsh, наиболее часто используемые оболочки Linux, имеют свои собственные встроенные версии команды времени, которые имеют приоритет над командой времени Gnu.

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

type time
# Bash
 time is a shell keyword

 # Zsh
 time is a reserved word

 # GNU time (sh)
 time is /usr/bin/time

Чтобы использовать команду времени Gnu, вы должны указать полный путь к двоичному файлу времени, обычно /usr/bin/time, использовать команду env или использовать начальную обратную косую черту \time, которая предотвращает использование обоих и встраивания.

Время Gnu позволяет форматировать вывод и предоставляет другую полезную информацию, такую как ввод-вывод памяти и вызовы IPC.

Использование команды Time в Linux

В следующем примере мы измерим время, необходимое для загрузки ядра Linux с помощью инструмента wget:

time wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.9.tar.xz

То, что будет напечатано в качестве вывода, зависит от версии используемой вами команды времени:

# Bash
 HTTP request sent, awaiting response... 200 OK
 Length: 103135232 (98M) [application/x-xz]
 Saving to: 'linux-4.19.9.tar.xz'

 linux-4.19.9.tar.xz 100%[===================================================================================================================>] 98.36M 105MB/s in 0.9s

 2020-02-01 15:34:54 (105 MB/s) - 'linux-4.19.9.tar.xz' saved [103135232/103135232]


 real 0m6.866s
 user 0m0.124s
 sys 0m0.576s
  • real, total или elapsed — это время от начала до конца звонка. С момента нажатия клавиши Enter до момента завершения команды wget.
  • user - количество процессорного времени, проведенного в пользовательском режиме.
  • system или sys - количество процессорного времени, затрачиваемого в режиме ядра.

Вывод

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

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.