Оператор 'X'
Оператор '-X'.
-X указатель файла -X выражение -X
Проверка файла, где 'X' - одно из ниже описанных значений. Это унарный оператор с одним аргументом - либо именем файла, либо указателем файла. Проверяет одно из условий. Если аргумент не указан, то берется значение переменной $_. Для ключа -t - STDIN. Результат 1, если true, '', если false или неопределенное значение, если файл не найден. Несмотря на странный вид это унарный оператор с соответствующим приоритетом. Аргумент можно заключать в круглые скобки. 'X' имеет следующие значения:
| -r | Файл разрешен на чтение эффективным uid/gid |
| -w | на запись -//- |
| -x | исполнение -//- |
| -o | принадлежит эффективному uid (идентификатор пользователя) |
| -R | Файл разрешен на чтение реальным uid/gid |
| -W | на запись -//- |
| -X | исполнение -//- |
| -O | принадлежит реальному uid |
| -e | файл существует |
| -z | пустой |
| -s | не пустой |
| -f | обычный текст |
| -d | директория |
| -l | символическая ссылка |
| -p | pipes (конвейер) |
| -S | socket (гнездо) |
| -b | специальное блочное устройство |
| -c | -//- символьное -//- |
| -t | указатель на уст-во tty |
| -u | установлен бит setuid |
| -g | -//- setgid |
| -k | -//- sticky |
| -T | текстовой файл |
| -B | двоичный |
| -M | "возраст" файла в днях на момент старта скрипта |
| -A | дней с последнего чтения |
| -C | дней с последней модификации inode |