если файл file1 имеет более
Верно, если файл file1 имеет более позднее время модификации, чем file2.
file1 -ot file2
Верно, если файл file1 старше, чем file2.
file1 -ef file2
Верно, если файлы file1 и file2 имеют одинаковые номера устройств и индексных дескрипторов (inode).
-o optname
Верно, если задействована опция оболочки optname. Пояснения см. на странице man bash.
-z string
Верно, если длина строки равна нулю.
-n string
Верно, если длина строки не равна нулю.
string1 == string2
Верно, если строки совпадают. Вместо == может использоваться =.
string1 !== string2
Верно, если строки не совпадают.
string1 < string2
Верно, если строка string1 лексикографически предшествует строке string2 (для текущей локали).
string1 > string2
Верно, если строка string1 лексикографически стоит после строки string2 (для текущей локали).
arg1 OP arg2
Здесь OP - это одна из операций арифметического сравнения: -eq (равно), -ne (не равно), -lt (меньше чем), -le (меньше или равно), -gt (больше), -ge (больше или равно). В качестве аргументов могут использоваться положительные или отрицательные целые.
Из этих элементарных условных выражений можно строить сколь угодно сложные с помощью обычных логических операций ОТРИЦАНИЯ, И и ИЛИ:
- !(expression)
Булевский оператор отрицания.
- expression1 -a expression2
Булевский оператор AND (И). Верен, если верны оба выражения.
- expression1 -o expression2
Булевский оператор OR (ИЛИ). Верен, если верно любое из двух выражений.
Такие же условные выражения используются и в операторах while и until, которые мы рассмотрим чуть ниже.
Содержание Назад Вперед