Команда time используется для определения того, сколько времени требуется для выполнения данной команды. Это полезно для тестирования производительности ваших скриптов и команд.
Например, если у вас есть два разных сценария, выполняющих одну и ту же работу, и вы хотите знать, какой из них работает лучше, вы можете использовать команду Linux time, чтобы определить продолжительность выполнения каждого сценария.
Содержание
Версии Time Command
Как Bash, так и Zsh, наиболее широко используемые оболочки Linux, имеют свои собственные встроенные версии команды time, которые имеют приоритет над командой времени 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 time, вам необходимо указать полный путь к двоичному файлу времени, обычно /usr/bin/time
, использовать команду env
или использовать начальную обратную косую черту time
которая предотвращает использование обоих и встроенных модулей.
Gnu time позволяет форматировать вывод и предоставляет другую полезную информацию, такую как ввод-вывод памяти и вызовы IPC.
Использование команды времени Linux
В следующем примере мы собираемся измерить время, необходимое для загрузки ядра Linux с помощью инструмента wget :
time wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.9.tar.xz
То, что будет напечатано в качестве вывода, зависит от версии используемой вами команды time:
# Bash
real 0m33.961s
user 0m0.340s
sys 0m0.940s
# Zsh
0.34s user 0.94s system 4% cpu 33.961 total
# GNU time (sh)
0.34user 0.94system 0:33.96elapsed 4%CPU (0avgtext+0avgdata 6060maxresident)k
0inputs+201456outputs (0major+315minor)pagefaults 0swaps
- реальное или общее или прошедшее (время настенных часов) — это время от начала до конца разговора. Это время с момента нажатия клавиши
Enter
до момента завершения командыwget
. - user — количество процессорного времени, проведенного в пользовательском режиме.
- system или sys — количество процессорного времени, потраченного в режиме ядра.
Выводы
К настоящему времени вы должны хорошо понимать, как использовать команду времени. Если вы хотите узнать больше о команде Gnu time, посетите страницу руководства time .