Bash: время между действиями? - PullRequest
3 голосов
/ 02 января 2012

Как бы я создал скрипт bash, который бы сообщал мне время, которое проходит между возвращенным сообщением и нажатием какой-либо клавиши после этого?Спасибо.

1 Ответ

4 голосов
/ 02 января 2012

Базовая реализация для клавиши ввода и указания времени в секундах:

t0=`date +%s`
echo Press enter...
read
t1=`date +%s`

echo Elapsed: $[$t1-$t0]

замена %s на %s%N будет измерять наносекунды.(%N дает наносекунды, дополненные нулями)

На некоторых платформах это может сработать, чтобы поймать «любой ключ»:

stty cbreak
t0=`date +%s%N`
echo Press any key...
dd bs=1 count=1 of=/dev/null 2>/dev/null
t1=`date +%s%N`

echo Elapsed: $[($t1-$t0)/1000000] microseconds
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...