Как получить список десяти файлов/каталогов, отсортированных по размеру

du -s * | sort -nr | head | cut -f2 | parallel -k du -sh


Команда ‘du’ используется для получения размеров файлов и каталогов в текущем каталоге или указанном месте. Параметр ‘-s’ указывает на необходимость суммирования размеров только для каталогов, а символ ‘*’ указывает на выбор текущего каталога. Затем команда ‘sort’ с параметрами ‘-nr’ сортирует размеры в обратном числовом порядке. Команда ‘head’ без параметров возвращает первые 10 строк списка, а ‘cut’ с флагом ‘-f2’ отсекает второе поле (размер) и возвращает только имена файлов и каталогов. Команда ‘parallel’ с параметром ‘-k’ выполняет команду ‘du -sh’ (получение размера в удобном формате) параллельно для каждого файла/каталога из предыдущего вывода. Это полезно для быстрого получения размеров нескольких файлов/каталогов. Альтернативой к данной команде могло бы быть использование команды ‘find’ с параметрами ‘-type f -exec du -sh {} +’ для получения размеров файлов, а затем сортировка и отсечение.

Ответить

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