Bash, проверка переменной
Итак, я пытаюсь запустить скрипт, где, если пользователь вводит y
или же Y
то вывод YES
но если пользователь вводит n
или же N
тогда вывод NO
вот что у меня так далеко:
read character
if (( ("$character") == "y" )) || (( ("$character" == "Y") )); then
echo "YES"
else
echo "NO"
fi
Когда я запускаю этот код, я получаю YES
успешно, но ввод n
просто приводит к YES
тем не мение.
Я понятия не имею, что я делаю не так, и я хотел бы получить какой-либо вклад.
Заранее спасибо!
1 ответ
Решение
((...))
используется для математических расчетов. Ты можешь использовать [[...]]
в BASH вот так:
read character
if [[ "$character" == [yY] ]]; then
echo "YES"
else
echo "NO"
fi
Также я объединил 2 условия в одно использование [yY]
образец шара.