Все о реестре Regedit / All about registry
Как узнать размер папки через командную строку? / How check size folder in command prompt?
Узнать размер папки в Microsoft Windows достаточно просто через графический интерфейс.
Для этого, достаточно выделить интересующую папку левой кнопкой мыши, далее нажать правой кнопкой мыши и выбрать пункт Свойства
В окне Свойства указан размер Папки.
Узнать размер папки через командную строку немного сложнее.
Для этого, необходимо создать . cmd файл с содержимым:
@echo off
setlocal enableextensions disabledelayedexpansion
set «source=c:\Folder»
if not defined target set «source=%cd%»
set «size=0»
for /f «tokens=3,5» %%a in (‘
dir /a /s /w /-c «%source%»
^| findstr /b /l /c:» «
‘) do if «%%b»==»» set «size=%%a»
echo % size %
Где C :\ Folder — может быть заменен на интересующую вас папку. Отображение размера будет выполнено в байтах.
Learn the size of the folder in Microsoft Windows is quite simple through the graphical interface. To do this, it is enough to select the folder of interest with the left mouse button, then right mouse button click and click Properties
The Folder size is specified in the Properties.
Finding out the size of a folder via the command line is a bit more complicated.
To do this, you must create .cmd file with content:
rem @echo off
setlocal enableextensions disabledelayedexpansion
set «source=c:\Folder»
if not defined target set «source=%cd%»
set «size=0»
for /f «tokens=3,5» %%a in (‘
dir /a /s /w /-c «%source%»
^| findstr /b /l /c:» «
‘) do if «%%b»==»» set «size=%%a»
echo %size%
Where C:\Folder — can be replaced to the required folder. The size will be displayed in bytes.
Определить размер папки
Комментарий модератора | ||
|
Спасибо всем! Получается!
Только я терь к другой немножко схеме подошёл , можно из этого кода выдрать токо то что считывает размер папки (с под папками) и выводит на экран?
Посчитать размер папки
Есть код который по выбору показывает размер папки , но в нём какая то ошибка и он показывает.
Команда ROBOCOPY и размер папки
Как (если можно) в команде robocopy сделать чтобы вместо подробной инфы о всех файлах он показывал.
Как определить размер папки
Здравствуйте, формучане 🙂 Пытаюсь определить размер папки скриптом php, но выходит довольно туго.
Определить размер папки на компьютере в байтах
Как можно проще всего програмно, например при нажатии на кноку определить размер папки ?
в заглавии как-бы описание.
Озвучьте, пожалуйста, полностью задание.
Размер папки в байтах Вы получили — это переменная dirsize, начиная со строки № 8.
Остальное по сути лишнее.
Кхм.
Нет, не на столько, как бы хотелось )
Я так понял Вам нужно, чтобы ответ писало в МегаБайтах, но при этом математика не выдавала ошибок.
(*немного почесав голову*)
Так достаточно коротко: ?
Решение
Вам вроде как хотелось по-короче.
Ну если нужно и с сотыми, тогда так:
Значит: Сначала ставит что п=у (у в данном случае является путём в реестре к каталогу) ,потом показывает размер папки (%u%)
Вот во время этого подсчёта он должен исключать папки «mod» и «backup»
Добавлено через 7 минут
А можно ещё сделать чтобы он считал в другом формате как
тут расписано?
Добавил команды attrib. А также внимательно сравни мою 7ую строчку с 4ой твоей, а также 9ую с 6ой.
Когда в «главном меню» выбираю «установку» (errorlevel 2) , он мне на пол секунды показывает «переустановка атрибутов скрытого файла F:\b\dektop.ini не произведена» а потом показывает всё правильно. (строка 42-49) , но когда я в «главном меню» выбираю «инфо» (errorlevel 6) он мне это-же самое показывает (строка 42-49) , а мне надо чтобы при выборе «инфо» (errorlevel 6) он показывал (сторки 34-39)
Добавлено через 2 часа 9 минут
Да и ваще , тщательно по смотря я понял что он как-то не правильно показывает размер папки ,когда исключает те две.
Как определить размер каталогов на диске с помощью PowerShell
Большинство пользователей Windows привыкли, что самый простой способ получить размер папки – открыть ее свойства в Проводнике Windows. Более опытные предпочитают использовать такие утилиты, как TreeSize или WinDirStat. Но, если вам нужно получить более детальную статистику по размеру папок в конкретном каталоге, или исключить определенные типы файлы, в этом случае лучше воспользоваться возможностями PowerShell. В этой статье мы покажем, как быстро получить размер определенного каталога на диске (или всех вложенных каталогов) с помощью PowerShell.
Совет . Для получения размера конкретной папки на диске также можно воспользоваться консольной утилитой du.exe.
Для получения размеров файлов и каталогов в PowerShell можно воспользоваться командами Get-ChildItem (алиас gci) и Measure-Object (алиас measure).
Первый командлет позволяет по указанным критериями сформировать список файлов в заданном каталоге, а второй выполняет арифметическое действие.
Совет . В одной из прошлых статей мы показывали как использовать командлет Get-ChildItem чтобы найти ТОП самых больших файлов на диске .
Например, чтобы получить размер папки c:\ps, выполните команду:
Get-ChildItem c:\iso | Measure-Object -Property Length -sum
Как вы видите, общий размер файлов в данном каталоге указан в поле Sum и составляет около 2 Гб (размер указан в байтах).
Чтобы преобразовать размер в более удобные Мб или Гб, используйте такую команду:
(gci c:\iso | measure Length -s).sum / 1Gb
(gci c:\iso | measure Length -s).sum / 1Mb
Для округлений результата до двух символов после запятой, выполните команду:
» <0:n2>GB» -f ((gci c:\iso | measure Length -s).sum / 1Gb)
Чтобы посчитать суммарный размер всех файлов определенного типа в каталоге используйте такую команду (к примеру, мы хотим получить общий размер ISO файлов в папке):
(gci c:\iso *.iso | measure Length -s).sum / 1Mb
Указанные выше команды позволяют получить только суммарный размер файлов в указанной директории. Если в папке содержаться вложенные каталоги, размер файлов в этих каталогах не будет учтен. Для получения общего размера всех файлов в каталоге с учетом вложенных директорий нужно использовать параметр –Recurse . Получим суммарный размер всех файлов в папке c:\Windows.
» <0:n2>GB» -f ((gci –force c:\Windows –Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb)
Чтобы учитывать размер скрытых и системных файлов я дополнительно указал аргумент –force .
Итак, размер каталога C:\Windows на нашем диске составляет около 16 Гб.
Совет . Чтобы не показывать ошибки доступа к каталогам используйте параметр -ErrorAction SilentlyContinue .
Можно получить размер всех вложенных папок первого уровня в указанном каталоге. Например, нам нужно получить размер всех профилей пользователей в папке C:\users.
gci -force ‘C:\Users’-ErrorAction SilentlyContinue | ? < $_ -is [io.directoryinfo] >| % <
$len = 0
gci -recurse -force $_.fullname -ErrorAction SilentlyContinue | % < $len += $_.length >
$_.fullname, ‘ <0:n2>GB’ -f ($len / 1Gb)
>
% — это алиас для цикла foreach-object .
Идем дальше. Допустим ваша задача – узнать размер каждого каталога в корне системного жесткого диска и представить информацию в удобной для анализа табличной форме с возможностью сортировки по размеру каталогов. Для этого воспользуемся командлетом Out-GridView.
Для получения информации о размере каталогов на диске C:\ выполните следующий PowerShell скрипт:
$targetfolder=’C:\’
$dataColl = @()
gci -force $targetfolder -ErrorAction SilentlyContinue | ? < $_ -is [io.directoryinfo] >| % <
$len = 0
gci -recurse -force $_.fullname -ErrorAction SilentlyContinue | % < $len += $_.length >
$foldername = $_.fullname
$foldersize= ‘<0:n2>‘ -f ($len / 1Gb)
$dataObject = New-Object PSObject
Add-Member -inputObject $dataObject -memberType NoteProperty -name “foldername” -value $foldername
Add-Member -inputObject $dataObject -memberType NoteProperty -name “foldersizeGb” -value $foldersize
$dataColl += $dataObject
>
$dataColl | Out-GridView -Title “Размер вложенных каталогов”
Как вы видите перед вами должно появиться графическое представление таблицы, в которой указаны все папки в корне системного диска C:\ и их размер. Щелкнув по заголовку столбца таблицы, вы можете отсортировать папки по размеру.
Узнать размер папки из командной строки Windows
Можно ли в Windows сделать папку’s размер из командной строки без использования 3-й партии инструмент?
Я хочу такой же результат, как вы получили бы при нажатии правой кнопкой мыши на папке в проводнике Windows → свойства.
Вы можете просто добавить размеры рекурсивно (следующий пакетный файл):
Однако, это имеет несколько проблем, потому что команду » cmd » ограничено 32-разрядное целое число арифметических операций. Так он будет получать размеры более 2 Гб не так 1 . Кроме того, он, вероятно, считать символьные ссылки и соединения несколько раз, так что’ы в лучшем качестве верхнего предела, а не истинный размер (вы’будете иметь эту проблему с любым инструментом, однако).
Альтернатива в PowerShell:
Если вы хотите, чтобы он красивше:
Вы можете использовать это непосредственно из «ЦМД»:
1 У меня есть частично готовые библиотеки bignum где-то пакетные файлы, которые, по крайней мере получает произвольной точности целое сложение. Я действительно должен отпустить ее, я думаю 🙂
Есть встроенный инструмент Windows для этого:
Это позволит печатать много ненужной информации, но конец будет размер такой папки:
Если вам нужно включить скрытые папки добавить /а .
Предлагаю скачать утилита дю от компании Sysinternals Люкс, предоставляемый Microsoft по этой ссылке http://technet.microsoft.com/en-us/sysinternals/bb896651
В то время как вы на него, взгляните на другие коммунальные услуги. Они являются спасительным для всех Windows профессиональная
Только такой же, но в PowerShell:
Это должно привести к следующему результату:
Если у вас есть ГИТ, установленных в компьютере (все более и более распространены) просто откройте MINGW32 и типа: дю папку
Я рекомендую использовать утилиту https://github.com/aleksaan/diskusage . Очень простая и полезная. И очень быстро.
Просто введите в командной оболочке
и получаем список папок расставлена по размерам в 1.| Реж: d:/go | размер: 325.72 Мб | глубина: 1 2.| Реж: d:/Books | размер: 14.01 Мб | глубина: 1
Этот пример был выполнен в 272ms на HDD.
Вы можете увеличить глубину подпапки для анализа, например:
и вам размеров не только для выбранных папок, а также для ее подпапок в 1.| Реж: d:/go | размер: 325.72 Мб | глубина: 1 2.| Реж: d:/go/pkg | размер: 212.88 Мб | глубина: 2 3.| Реж: d:/go/src | размер: 62.57 Мб | глубина: 2 4.| Реж: d:/go/bin | размер: 30.44 Мб | глубина: 2 5.| Реж: d:/Books/Chess | размер: 14.01 Мб | глубина: 2 6.| Реж: d:/Books | размер: 14.01 Мб | глубина: 1 7.| Реж: d:/go/api | размер: 6.41 Мб | глубина: 2 8.| Реж: d:/go/test | размер: 5.11 Мб | глубина: 2 9.| Реж: d:/go/doc | размер: 4.00 Мб | глубина: 2 10.| Реж: d:/go/misc | размер: 3.82 Мб | глубина: 2 11.| Реж: d:/go/lib | размер: 358.25 КБ | глубина: 2
* 3.5 ТБ на сервере был отсканирован для 3m12s
Здесь приходит код PowerShell я пишу список размер и количество файлов для всех папок в текущей директории. Не стесняйтесь повторно использовать или изменить согласно вашей потребности.
Я думаю, это будет работать только если каталог является статическим и его содержание Дон’т изменение между выполнением двух команд реж. Может, есть способ все это объединить в одну команду, чтобы избежать этого, но это работает для моих целей (я не’т хотите полный список, только резюме).
GetDirSummary.летучая мышь c:\temp
Этот код протестирован. Вы можете проверить его снова.
Так вот решение для ваших запросов в порядке, вы изначально просили. Это даст размер читаемости без ограничений размер всех переживает. Совместимость с Win Vista или новее. ХР доступна, только если установлен Robocopy-это. Просто перетащите папку на этот пакетный файл или использовать лучше способа, указанного ниже.
« @Эхо выключено команда setlocal enabledelayedexpansion набор «и vSearch=файлы :»по
На %%Я В (%*) сделать ( набор «и vSearch=файлы :»по Для /Л %%М (1,1,2) делать ( к /ф «в usebackq жетонов=3,4 delims=: » С %%а ( программы » По%%Я» и » По%%Я» и /Е /Л /Н /НДЛ /НФЛ ^| обнаружить «!vSearch!» В) делать ( если /я%%м, что»==»и 1″ и ( набор «и filecount=%%А» ;vSearch=байт: Аскорутин набор «и ) еще ( набор «и foldersize=%%в%%в” ) ) ) папка Эхо: %%
nxi FileCount: !filecount! Foldersize: !foldersize! РЭМ удалить слово на «РЭМ» в файл из строки ниже выводить в txt Папка РЭМ Эхо: %%
nxi FileCount: !filecount! Foldersize: !foldersize!>>Folder_FileCountandSize.txt ) пауза « Чтобы иметь возможность использовать этот пакетный файл, удобно положить его в папку sendto. Это позволит вам Правой Кнопкой Мыши папку или Выбор папки, нажмите на кнопку «Отправить», а затем выберите этот пакетный файл.
Чтобы найти папку «sendto» на свой компьютер простейшим образом-открыть cmd и скопируйте в эту строку как есть.