Пакетный файл, который возвращает размер папки
Вопрос
У меня проблемы с пространством на моей машине Vista, и я должен выяснить, что занимает так много места.
Я хотел бы написать простой пакетный файл, который возвращает все папки в C: и размер каждой папки.
А dir
Команда не возвращает размер папки.
К сожалению, у нас нет права администратора, и мы не можем установить стороннее приложение, и у нас есть другие пользователи в нашей группе, которые также нуждаются в этой информации.
Решение
Я посмотрел на эту ветку для некоторых подсказок о том, как достичь размера каталога:
Пакетный файл для отображения размера каталога
В противном случае:
Dirsize:
@echo off
setLocal EnableDelayedExpansion
set /a value=0
set /a sum=0
FOR /R %1 %%I IN (*) DO (
set /a value=%%~zI/1024
set /a sum=!sum!+!value!
)
@echo %CD%:!sum! k
Alldirsize:
echo off
set WORKING_DIRECTORY=%cd%
for /f "delims=" %%a in ('dir /a:D /D /B /S') do (
echo off
cd %%a
"%WORKING_DIRECTORY%"\dirsize "%%a"
cd %WORKING_DIRECTORY%
)
Используй это: ALLDIRSIZE > C:\temp\FileContainingFolderSizes.txt
Который взят из превосходных форумов тестирования Ричарда Бишопа: http://www.bish.co.uk/forum/index.php?topic=58.0
Другие советы
Не совсем отвечая на ваш вопрос, но если у вас есть доступ в графический интерфейс, я бы предложил использовать Treesize:http://www.jam-software.com/freeware/index.shtml
Если вы предпочитаете командную строку, используйте DU Command от Unix Utils:http://unxutils.sourceforge.net/