du
- очень хороший инструмент для такого рода вещей, он, вероятно, быстрее, чем то, что вы можете катить вручную, используя Find , но вам нужно быть осторожным при разборе вывода.
Часто каталоги содержат экзотические символы в своих именах, которые включают в себя очевидные пробелы и необычные строки.Это делает парсинг вывода du
несколько ненадежным, если кто-то делает это:
% mkdir "foo
1234 bar"
Если это не имеет большого значения, забудьте об этом.В противном случае вам придется выполнять математику и выполнять математику вручную, что может занять некоторое время для интерпретатора Ruby в больших файловых системах.