Сценарий Bash – проверьте, находится ли переменная между двумя другими переменными?

В сценарии Bash я хочу проверить, находится ли var1 между var2 и var3. Но я не могу найти, как это сделать.

Что-то вроде этого.

      var1=15
var2=10
var3=20

if [ "$var1" is located beetween "$var2" and "$var3" ]
then
    echo "ok"
else
    echo "not ok"
fi

Не могли бы вы мне помочь ?

Спасибо.

2 ответа

Предполагая, что значения всегда числовые и под «var1, расположенным между var2 и var3», вы имеете в виду, чтоvar2 < var1 < var3, вы можете использовать это:

      if (( $var2 < $var1 )) && (( $var1 < $var3 )); then
    echo "ok"
else
    echo "not ok"
fi

Ваша логика бессмысленна... Ведь код в скрипте статический, поэтому когда вы меняете что-либо в переменных, вы можете подкорректировать логику в остальной части скрипта.

Другие вопросы по тегам