Баш спать в миллисекундах
Мне нужен таймер, который будет работать с миллисекундами. Я пытался использоватьsleep 0.1
Команда в скрипте я вижу сообщение об ошибке:
syntax error: invalid arithmetic operator (error token is ".1")
Когда я бегуsleep 0.1
в терминале работает нормально.
Пожалуйста, помогите мне!
РЕДАКТИРОВАТЬ: Извините, я ошибся:
function timer
{
while [[ 0 -ne $SECS ]]; do
echo "$SECS.."
sleep 0.1
SECS=$[$SECS-0.1]
done
}
Линияsleep 0.1
был 5-м иSECS=$[$SECS-0.1]
был 6-м. Я просто искажал строки. Проблема была в 6-й строке, потому что bash не может работать с числами с плавающей точкой. Я изменил свою функцию, как показано ниже:
MS=1000
function timer
{
while [[ 0 -ne $MS ]]; do
echo "$SECS.."
sleep 0.1
MS=$[$MS-100]
done
}