Как найти самый большой файл в каталоге? [Дубликат]

9

Возможный дубликат:
команда Unix для вывода списка всех каталогов размером более 10 МБ

Как найти самый большой файл в каталоге?

Сообщество
источник
Связанная команда Unix для
вывода
2
Это не дубликат - другой хочет большие каталоги, этот хочет большие файлы.
AShelly

Ответы:

13

Лучший способ - использовать ls, отсортированный по размеру:

ls -S

Чтобы получить самый большой, используйте head:

ls -S | head -1
Натан Феллман
источник
3

Если вы уже в каталоге:

du -a | sort -nr | head -1
Джон Т
источник
Размеры для подкаталогов также рассчитываются. Возможно, вам следует упомянуть об этом - я не уверен, какой подход предпочитает ФП.
Даниэль Бек
Если бы он был там изначально, подумал, что было бы логично оставить его в случае, если один из каталогов также большой.
Джон Т
3

Вы можете использовать команду find для выполнения этой работы.

Пусть DIR - это каталог, в котором вы хотите найти самый большой файл, выполните следующую команду:

find DIR/ -type f -size +5000k

Это будет список файлов, размер которых превышает 5 МБ. Вы можете настроить это значение (т.е. размер опции) в соответствии с вашими потребностями.

Если вы хотите проверить файлы только в этом DIR, используйте приведенный ниже. Вы можете настроить значение maxdepth для проверки во вложенной папке.

find ./ -maxdepth 1 -type f -size +5000k
Джозеф Саймон
источник
это мило. Было бы еще лучше, если бы был способ показать размер для каждого найденного
AShelly