Время (Unix) - time (Unix)
Пример время команда | |
Разработчики) | Разные Открытый исходный код и коммерческий Разработчики |
---|---|
Операционная система | Unix, Unix-подобный, Inferno |
Платформа | Кроссплатформенность |
Тип | Команда |
В вычисление, время
это команда в Unix и Unix-подобный операционные системы. Он используется для определения продолжительности выполнения конкретного команда.
Обзор
время (1)
может существовать как отдельная программа (например, GNU время) или как ракушка встроенный в большинстве случаев (например, в ш, трепать, tcsh или в zsh ).
Пользовательское время против системного времени
Общее время ЦП - это сочетание количества времени, которое ЦП или ЦП потратили на выполнение некоторых действий для программы, и количества времени, которое они потратили на выполнение системные вызовы для ядро от имени программы. Когда программа проходит через массив, она накапливает время ЦП пользователя. И наоборот, когда программа выполняет системный вызов Такие как exec
или же вилка
, он накапливает процессорное время системы.
Реальное время против времени процессора
Термин «реальное время» в этом контексте относится к прошедшему настенные часы, например, секундомер. Общее время ЦП (время пользователя + системное время) может быть больше или меньше этого значения. Поскольку программа может некоторое время ждать и вообще не выполняться (будь то в пользовательском или системном режиме), реальное время может быть больше, чем общее время ЦП. Поскольку программа может разветвлять дочерние элементы, время ЦП (пользовательское и системное) добавляется к значениям, сообщаемым время
команда, но в многоядерной системе эти задачи выполняются параллельно, общее время ЦП может быть больше реального времени.
использование
Чтобы использовать команду, просто поставьте перед любой командой слово время
, Такие как:
$ время ls
Когда команда завершится, время
сообщит, сколько времени потребовалось для выполнения ls
команда с точки зрения пользователя Время процессора, время центрального процессора системы и реальное время. Формат вывода различается в зависимости от версии команды, а некоторые дают дополнительную статистику, как в этом примере:
$ время хост wikipedia.orgwikipedia.org имеет адрес 103.102.166.224Почтой wikipedia.org занимается 50 mx2001.wikimedia.org.Почтой wikipedia.org занимается 10 mx1001.wikimedia.org.хост wikipedia.org 0,04 сек. пользователь 0,02 сек. система 7% ЦП всего 0,780$
время (либо автономная программа, либо когда оболочка Bash работает в режиме POSIX И время вызывается как время -p
) сообщает стандартный вывод ошибок.
время -p
Переносимые скрипты должны использовать время -p
mode, который использует другой формат вывода, но совместим с различными реализациями:
$ время -p sha256sum / bin / ls12477deb0e25209768cbd79328f943a7ea8533ece70256cdea96fae0ae34d1cc / bin / lsреальный 0.00пользователь 0.00sys 0.00$
Реализации
Время GNU
Текущие версии GNU time по умолчанию сообщают больше, чем просто время:
$ / usr / bin / время sha256sum / bin / ls12477deb0e25209768cbd79328f943a7ea8533ece70256cdea96fae0ae34d1cc / bin / ls0.00user 0.00system 0: 00.00прошедший 100% CPU (0avgtext + 0avgdata 2156maxresident) k0 входов + 0 выходов (0 основных + 96 второстепенных) ошибок страницы 0 замен$
Формат вывода для GNU время, можно настроить с помощью ВРЕМЯ
переменная среды, и она может включать в себя информацию, отличную от времени выполнения (т. е. использования памяти). Такое поведение вообще недоступно POSIX -соответствующее время, или при выполнении как время -p
.
Документация по этому время обычно можно получить с помощью мужчина 1 раз
.
Метод работы
Согласно исходному коду реализации GNU время
, большая часть информации отображается время
происходит из ждать3
системный вызов. В системах, не имеющих ждать3
вызов, который возвращает информацию о статусе, раз
вместо этого используется системный вызов.
Баш
В популярной оболочке Unix Баш, время
это специальное ключевое слово, которое можно поставить перед трубопровод (или одиночная команда), которая измеряет время всего конвейера, а не только единственной (первой) команды, и использует другой формат по умолчанию, и помещает пустую строку перед отчетным временем:
$ время seq 10000000 | wc -l10000000реальный 0m0.078sпользователь 0m0.116ssys 0m0.029s$
Сообщаемое время - это время, используемое обоими seq
и wc -l
сложены. Формат вывода можно настроить с помощью TIMEFORMAT
Переменная.
В время является не встроенным, а специальным ключевым словом и не может рассматриваться как функция или команда. Он также игнорирует перенаправление конвейера (даже если выполняется как время -p
, если только Bash не запущен в «режиме POSIX»).
Документация по этому время можно получить с помощью человек 1 баш
или внутри самого bash, используя время помощи
.
Смотрите также
- Системное время
- Cron процесс для планирования заданий для запуска в определенное время
- ВРЕМЯ (команда)
Рекомендации
- Единая спецификация UNIX, Выпуск 7 из Открытая группа : time простая команда - Справочник по командам и утилитам,
- Inferno Общие команды Руководство –
- Linux Пользователя Руководство - Пользовательские команды : time простая команда или дать использование ресурсов -
Этот Unix -связанная статья является заглушка. Вы можете помочь Википедии расширяя это. |