(20) Разработать программу, которая рекурсивно, с использованием функций dirent.h, выводит в иерархическом представлении содержимое каталога,
имя которого ей передано. Каждый выводимый элемент должен сопровождаться информацией о типе, хозяине, группе, правах доступа в человекочитаемом
формате, например:
файл: dir1/dir2/f1
тип: fifo-канал
хозяин: user1 (123)
группа: group1 (321)
права хозяина: чтение, запись
права группы: нет прав
права остальных: нет прав
спецправа: SUID (запуск от имени хозяина), Sticky (пожелание сохранения в ОЗУ после завершения)
Если
содержимое очередного подкаталога оказывается недоступным - сообщить об этом факте для каждого каталога и причинах его возникновения.