Чи все-таки я можу перерахувати файли, ввівши команду в оболонці, в якій перераховані всі назви файлів, назви папок та їх дозволи в CentOS?
Чи все-таки я можу перерахувати файли, ввівши команду в оболонці, в якій перераховані всі назви файлів, назви папок та їх дозволи в CentOS?
Відповіді:
Погляньте на дерево , можливо, доведеться спочатку встановити його. У дереві за замовчуванням не відображаються дозволи, щоб показати дозволи поряд із запуском імені файлу
tree -p
який буде рекурсивно перераховувати всі папки та каталоги в поточному каталозі, включаючи дозволи.
ls -lR
рекурсивно перераховує вміст каталогів. Висновок важко обробляти автоматично, але для ручного перегляду це може бути добре, оскільки це те, з чим ви знайомі.
У find
списках команд файли рекурсивно. Ви можете налаштувати його вихід, наприклад, наступні команди друкують дозволи, як ls -l
і перед кожним іменем файлу:
find -printf '%M %p\n'
Цей вихід може оброблятися механічно, якщо у ваших іменах файлів немає нових рядків. Якщо ви заміните \n
(новий рядок) на \000
(нульовий байт), ви можете обробити вихід інструментами, що підтримують розділені за нулем записи.
Обидва ls
і find
тільки друкують традиційні дозволи Unix, а не списки контролю доступу. Для рекурсивного переліку всіх дозволів файлів, включаючи інформацію про ACL, запустіть
getfacl -R .
Вихід може оброблятися механічно (спеціальні символи сортуються); зокрема, він може подаватись для setfacl --restore
копіювання дозволів на інше дерево з тими ж іменами файлів.
Ви цього хочете find
.
find some/dir -ls > output.txt