У меня есть данные, которые хранятся в одном из трех каталогов, и я хотел создать цикл, который позволит пользователю легко получить доступ к данным.Пользовательский ввод неверно читается в bash
Я пытаюсь заставить этот цикл работать так, чтобы, если кто-то входит в 1-3, он считывает число и меняет переменную timePeriod на «ежедневно», «bar10s» или «bar100ms». Когда я повторяю переменные timeCheck и timePeriod при запуске кода, чтобы убедиться, что они в порядке, timeCheck всегда возвращается вправо, но timePeriod читает «ежедневно» независимо от того, что читает переменная timeCheck. Я довольно новичок в bash, поэтому любая помощь будет оценена по достоинству.
#!/bin/bash
echo
timePeriod=""
timeCheck=0
read -p "Time Period for fac to run(press 1 for daily, 2 for 10 sec
intervals, 3 for 100ms intervals): " -e -i "$timeCheck" timeCheck
if [ $TimeCheck==1 ] ; then
timePeriod="daily"
elif [ $TimeCheck==2 ] ; then
timePeriod="bars10s"
elif [ $TimeCheck==3 ] ; then
timePeriod="bars100ms"
else
echo "Not Valid Time Period. Please re-try."
fi
echo $timeCheck
echo $timePeriod
спасибо за помощь. help – Eric
Еще раз спасибо за эту идею меню выбора. Он работает намного лучше, чем то, что я делал раньше. – Eric
Я рад помочь. – jm666