Неустойчивая в bash может представлять собой число, символ или строку символов. Имя переменной сможет начинаться с буквы или с символа подчеркивания и не может содержать дефис.Физически, переменные воображают собой именованные участки памяти, в которые может быть записана какая-либо данные. Необходимо понимать различия между именем переменной и ее значением. Если var1 — это имя неустойчивой, то $var1 — это ссылка на ее значение.
Возвращает true если:
-e
файл существует
-f
обыкновенный файл (не каталог и не файл устройства)
-s
ненулевой размер файла (именованная область данных на носителе информации)
-d
файл является каталогом
-b
файл представляется блочным устройством (floppy, cdrom и т.п.)
-c
файл является символьным устройством (клавиатура, модем, голосовая карта и т.п.)
-p
файл является каналом
-h
файл является символической ссылкой
-L
файл представляется символической ссылкой
-S
файл является сокетом
-t
файл (дескриптор) связан с терминальным механизмом
Этот ключ может использоваться для проверки — является ли файл стандартным механизмом ввода stdin ([ -t 0 ]) или стандартным устройством вывода stdout ([ -t 1 ]).
-r
файл вразумителен для чтения (пользователю, запустившему сценарий)
-w
файл доступен для записи (пользователю, запустившему сценарий)
-x
файл вразумителен для исполнения (пользователю, запустившему сценарий)
-g
set-group-id (sgid) флаг для файла или каталога поставлен
Если для каталога установлен флаг sgid, то файлы, создаваемые в таком каталоге, наследуют идентификатор категории каталога, который может не совпадать с идентификатором группы, к которой принадлежит пользователь, досоздавший файл. Это может быть полезно для каталогов, в которых хранятся файлы, общедоступные для категории пользователей.
-u
set-user-id (suid) флаг для файла установлен
Установленный флаг suid приносит к изменению привилегий запущенного процесса на привилегии владельца исполняемого файла. Исполняемые компданные, владельцем которых является root, с установленным флагом set-user-id запускаются с привилегиями root, простонар если их запускает обычный пользователь. [16] Это может оказаться полезным для некоторых прог (таких как pppd и cdrecord), которые осуществляют доступ к аппаратной части компьютера. В варианте отсутствия флага suid, программы не смогут быть запущены рядовым пользователем, не владеющим привилегиями root.
-rwsr-xr-t 1 root 179336 Oct 1 2000 /usr/sbin/pppd
Файл с поставленным флагом suid отображается с включенным флагом s в поле прав доступа.
-k
флаг sticky bit (бит фиксации) поставлен
Общеизвестно, что флаг «sticky bit» — это специальный тип прав доступа к файлам. Програмки с установленным флагом «sticky bit» остаются в системном кэше после своего завершения, снабжая тем самым более быстрый запуск программы. [17] Если флаг установлен для каталога, то это приносит к ограничению прав на запись. Установленный флаг «sticky bit» отображается в виде символа t в настилу прав доступа.
drwxrwxrwt 7 root 1024 May 19 21:26 tmp/
Если пользователь не является обладателем каталога, с установленным «sticky bit», но имеет право на запись в каталог, то он может удалять лишь те файлы в каталоге, владельцем которых он является. Это предотвращает удаление и перезапись «чужих» файлов в доступных каталогах, таких как /tmp.
-O
вы являетесь владельцем файла
-G
вы принадлежите к той же группе, что и файл
-N
файл был изменен с момента последнего чтения
f1 -nt f2
файл f1 более новый, чем f2
f1 -ot f2
файл f1 более старый, чем f2
f1 -ef f2
компданные f1 и f2 являются «жесткими» ссылками на один и тот же файл

