|
Команда test применяется для проверки условия. Она
вычисляет выражение и, если его значение -
истина, возвращает код завершения 0; иначе - ненулевое значение.
Ненулевой код возвращается и в случае, когда выражение отсутствует.
При проверке прав доступа используется действующий
идентификатор пользователя.
Знаки операций, флаги и скобки (второй способ записи команды test)
должны быть
отдельными аргументами в командной строке; обычно их разделяют пробелами.
Некоторые примитивы, из которых может состоять выражение:
-r файл |
|
Истина, если файл существует и доступен для чтения. |
-w файл |
|
Истина, если файл существует и доступен для записи. |
-x файл |
|
Истина, если файл существует и является выполняемым. |
-f файл |
|
Истина, если файл существует и является обычным файлом. |
-d файл |
|
Истина, если файл существует и является каталогом. |
-s файл |
|
Истина, если файл существует и имеет ненулевой размер. |
-z s1 |
|
Истина, если длина цепочки s1 нулевая. |
-n s1 |
|
Истина, если длина цепочки s1 ненулевая. |
| s1 = s2 |
|
Истина, если цепочки s1 и s2 равны. |
s1 != s2 |
|
Истина, если цепочки s1 и s2 не равны. |
s1 |
|
Истина, если s1 - непустая цепочка. |
n1 -eq n2 |
|
Истина, если целые числа n1 и n2 алгебраически равны.
На месте -eq могут быть также операции сравнения -ne
(не равно), -gt (больше), ge (больше или равно),
-lt (меньше), -le (меньше или равно). |
( выражение ) |
|
Истина, если истинно заключенное в скобки выражение (скобки должны
быть экранированы от интерпретации shell'ом). |
Примитивы могут комбинироваться с помощью следующих операций (в порядке
уменьшения приоритета):
! |
Унарная операция отрицания. |
-a |
Логическое И. |
-o |
Логическое ИЛИ. |
Список команд
|