У меня есть скрипт, в котором я должен принимать данные от пользователя с тайм-аутом менее секунды (0,03). Я использую команду чтения с опцией -t, которая работает со значениями с плавающей запятой в linux bash (по крайней мере, в arch и debian). Однако версия встроенной функции чтения bash для macOS работает только с целочисленными значениями.
оригинальная команда:
read -sn3 -t 0.03 INPUT
Я пытался использовать команду timeout, но, конечно, она не работает с встроенные оболочки. Я также попытался отправить ввод через fifo после желаемого времени, чтобы остановить чтение, но я не мог понять, как читать из файла и из stdin одновременно.
РЕДАКТИРОВАТЬ:
вот ошибка, возвращаемая чтением:
bash: чтение: 0,03: неверная спецификация тайм-аута