Как узнать разрешения текущего каталога и всех вышестоящих каталогов до корневого каталога/

dir=$(pwd); while [ ! -z "$dir" ]; do ls -ld "$dir"; dir=${dir%/*}; done; ls -ld /


Эта команда выводит права доступа для текущего каталога и всех родительских каталогов до корневого каталога (/).

Сначала команда с помощью pwd получает текущий каталог, который сохраняется в переменную dir. Далее запускается цикл, который использует ls -ld для вывода информации о правах доступа и других атрибутах файла, находящегося в dir. Затем dir обновляется, чтобы указывать на предыдущий родительский каталог (путем удаления последнего куска пути с помощью ${dir%/*}). Цикл продолжается, пока dir не станет пустым.

В конце команды выводятся права доступа и другие атрибуты корневого каталога (/).

Альтернативой для этой команды может быть использование команды find. Например, find . -printf "%m %p\n", которая выведет все файлы и директории в текущей директории и их права доступа.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *