Как найти каталог / подкаталог с наибольшим количеством файлов
Я пытаюсь найти каталог с наибольшим количеством файлов внутри него. Я знаю, что могу найти количество файлов, используя:
find -maxdepth 5 -type f | wc -l
но это полезно только тогда, когда я знаю, какой каталог проверить. Я хочу найти этот каталог, содержащий наибольшее количество файлов.
1 ответ
Вы можете создать список с именами каталогов и количеством файлов, которые они содержат, используя следующие вложенные find
команда:
find -maxdepth 5 -type d \
-exec bash -c 'n=$(find {} -maxdepth 1 -type f -printf x | wc -c); echo "{} $n"' \
Если вы передадите это:
find ... | sort -k2n | tail -n1
вы получите каталог, который содержит большинство файлов.