У меня есть сценарий bash, который запрашивает у пользователя их данные.BASH - Timed Input - Показать обратный отсчет
Я устанавливаю предел того, как долго мы ждем ввода. Я нашел это, и мне кажется, что я хочу.
timelimit=5
echo -e " You have $timelimit seconds\n Enter your name quickly: \c"
name=""
read -t $timelimit name
#read -t $timelimit name <&1
# for bash versions bellow 3.x
if [ ! -z "$name" ]
then
echo -e "\n Your name is $name"
else
echo -e "\n TIME OUT\n You failed to enter your name"
fi
Это показывает «У вас есть 5 секунд ...» какой-либо способ для обновления вывода, так он показывает 4,3,2,1 и т.д., как это отсчитывает?
Благодаря
Спасибо, что это работает, но есть задержка при вводе имени. есть идеи ? – Rocket
Это почти идеально;) Только основная проблема у меня есть, если тайм-аут составляет 10 секунд или больше. Затем изменяется формулировка: «У вас есть 9 секунд». Вы получаете дополнительные s на конце. – Rocket
@ Обновлено Rocket – 123