find /some/path -type f -printf '%f\n' | grep -o '\..\+$' | sort | uniq -c | sort -rn
Эта команда выполняет следующие действия:
1. find /some/path -type f -printf '%f\n' — Находит все файлы рекурсивно в указанном пути и выводит их имена.
2. grep -o '\..\+$' — Извлекает расширения файлов, находящиеся после последней точки в имени файла.
3. sort — Сортирует расширения файлов в алфавитном порядке.
4. uniq -c — Подсчитывает уникальные расширения и выводит количество каждого.
5. sort -rn — Сортирует результаты по убыванию количества файлов с каждым уникальным расширением.
Полезно для анализа структуры файловой системы и определения наиболее часто встречающихся расширений. Альтернативы включают использование других комбинаций утилит, таких как awk, cut и sed, для анализа и обработки результатов. Аргумент /some/path — путь к каталогу, для которого нужно выполнить поиск файлов.
