Как рассчитать время выполнения скрипта
Рассмотрим этот редирект оболочки:telnet towel.blinkenlights.nl >> starWarz
по окончании сеанс прервется, отсоединится от хоста или что-то в этом роде. Я хочу знать, как долго длится соединение. Как я могу определить это?
2 ответа
Большинство снарядов имеет встроенный time
, bash
есть это тоже. Это покажет вам реальное человеческое время (real
) процесс занимает с процессором время, затрачиваемое процессом на пользовательское пространство (user
) и пространство ядра (sys
).
Запустите команду time
:
time telnet towel.blinkenlights.nl >> starWar
В конце bash
покажет время на STDERR как:
real XmX.XXXs
user YmY.YYYs
sys ZmZ.ZZZs
Даже если вы находитесь на оболочке, которая не имеет time
встроенный у вас есть внешний time
команда /usr/bin/time
от time
пакет. Использование такое же.
Похоже, вы ищете time
встроенная:
$ help time
time: time [-p] pipeline
Report time consumed by pipeline's execution.
Execute PIPELINE and print a summary of the real time, user CPU time,
and system CPU time spent executing PIPELINE when it terminates.
Options:
-p print the timing summary in the portable Posix format
The value of the TIMEFORMAT variable is used as the output format.
Exit Status:
The return status is the return status of PIPELINE.
Он напечатает отчет о времени, затраченном командой. Например:
$ time sleep 3
real 0m3.027s
user 0m0.000s
sys 0m0.000s
"Реальное" поле - это фактическое время, которое прошло, то же самое значение, которое вы бы измерили часами. Итак, вы можете просто сделать:
time telnet towel.blinkenlights.nl >> starWarz