Проверка переменной на число в диапазоне

Проверка переменной на число в диапазоне

06.06.2017 06:27:55 Просмотров 28 Источник

Пользователь вводит номер порта, который пишется в переменную PORT, можете объяснить как сделать проверку переменной на число и причём чтобы это число было в диапазоне от 0 до 65536

Такой вариант не работает - в цикл не заходит если я в PORT пишу число больше чем 65536

while $PORT <= 0 || $PORT >= 65536
У вопроса есть решение - Посмотреть?

Ответы - Проверка переменной на число в диапазоне / Проверка переменной на число в диапазоне

Mit9l

06.06.2017 06:48:00

Может такой вариант - while $PORT >= 0 && $PORT <= 65536 ?

Является ответом!
aleksandr barakin

06.06.2017 06:49:30

в программе bash лучше воспользоваться арифметическими вычислениями:

while ((PORT<=0 || PORT>=65536))

если же требуется posix-совместимость, то лучше так:

while [ "$PORT" -le 0 -o "$PORT" -ge 65536 ]
Закрыть X