Операторы сравнения в bash
-
str1 = str2
Проверяет строки на равенство, возвращает истину, если строки идентичны. -
str1 != str2
Возвращает истину, если строки не идентичны. -
операторы
«>»
и«<»
необходимо экранировать с помощью обратной косой черты, иначе скрипт будет работать неправильно, хотя сообщений об ошибках и не появится. -
Скрипт интерпретирует знак
«>»
как команду перенаправления вывода. -
str1 < str2
Возвращает истину, еслиstr1
меньше, чемstr2
. -
str1 > str2
Возвращает истину, еслиstr1
больше, чемstr2
.
Пример:
#!/bin/bash
val1=text
val2="another text"
if [ $val1 \> $val2 ]; then
echo "$val1 is greater than $val2"
else
echo "$val1 is less than $val2"
fi
-n str1
Возвращает истину, если длинаstr1
больше нуля.-z str1
Возвращает истину, если длинаstr1
равна нулю.