Работая с файлами и директориями в Bash, часто необходимо проверять их существование, права доступа и другие атрибуты. Для этого используются встроенные проверки:
📂 Проверка существования и типа файла:
-
-d file — файл существует и является директорией -
-e file — файл существует (не важно, что это) -
-f file — файл существует и является обычным файлом 🔑 Проверка прав доступа:
-
-r file — файл существует и доступен для чтения -
-w file — файл существует и доступен для записи -
-x file — файл существует и является исполняемым 📏 Проверка размера и времени модификации:
-
-s file — файл существует и не пуст -
file1 -nt file2 — file1 новее file2 -
file1 -ot file2 — file1 старше file2 👤 Проверка владельца и группы:
-
-O file — файл существует и принадлежит текущему пользователю -
-G file — файл существует и принадлежит группе текущего пользователя 📝 Пример использования:
mydir="/path/to/directory"
if [ -d "$mydir" ]; then
echo "Директория $mydir существует"
cd "$mydir"
ls
else
echo "Директория $mydir не существует"
fi
Эти проверки помогут вам создавать надежные скрипты для автоматизации задач в Linux! 🚀
👉 @bash_srv