Как найти самые большие файлы рекурсивно, независимо от их количества

find . -type f -printf '%20s %p\n' | sort -n | cut -b22- | tr '\n' '\000' | xargs -0 ls -laSr


Находит все файлы в текущей директории и ее поддиректориях, выводит их размер и путь в отсортированном виде от наименьшего к наибольшему, удаляет размерных значений и заменяет символы новой строки на символы NULL. Затем передает спискок файлов команде ls -laSr, которая выводит информацию о каждом файле, отсортированную по размеру в обратном порядке.
Альтернативной командой может быть:
du -ah | sort -hr, которая выводит размер каждого файла и сортирует их в убывающем порядке;
ls -lS | awk '{print $5, $9}', которая выводит размер и имя каждого файла, сортирует по размеру в обратном порядке;
find . -type f -exec du {} + | sort -rh | less, которая выводит размер и путь к каждому файлу, отсортированные по размеру в обратном порядке и позволяет просмотреть результат в пейджере less.

Ответить

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