/ / Maneira mais rápida de obter o tamanho em bytes de uma pasta? - rubi

Maneira mais rápida de obter o tamanho em bytes de uma pasta? - rubi

Estou escrevendo um programa que mede os tamanhos de várias pastas, cada uma com até 10.000 arquivos. Estou curioso para saber qual seria a melhor e mais rápida maneira de obter o tamanho dessas pastas.

Atualmente, como estou apenas visando o Windows, estou usando o recurso interno WIN32OLE biblioteca "s Scripting.FileSystemObject.getFolder.size método. Como as pastas estão em discos magnéticos, estou usando threads separados para verificar o tamanho de cada pasta simultaneamente. Existe uma maneira mais inteligente de fazer isso?

Respostas:

0 para resposta № 1

Aqui está o código para obter o tamanho da pasta diretamente. Estou assumindo que o tamanho está em bytes para que você possa fazer os cálculos referentes a KB, MB e assim por diante

require "win32ole"
fso = WIN32OLE.new("Scripting.FileSystemObject")
folder = fso.GetFolder("<path-to-folder>")
# gives folder name
folder.name
# gives folder size in bytes
folder.size
# gives folder path
folder.path