Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 1274
Благодарности: 564

Профиль | Отправить PM | Цитировать


Цитата Busla:
обычный dir выдаёт »
совершенно верно:
но для папки пойдет и так
Код: Выделить весь код
@echo off
setlocal enabledelayedexpansion
set "d=C:\papka"
for /f "tokens=3" %%a in ('2^>nul dir /a-d/s/-c "%d%"') do set sz=!pps!& set pps=%%a
echo Размер папки - %sz% байт
pause
для диска тоже можно, но в информативных целях (число форматированное)
Код: Выделить весь код
@echo off
for /f "tokens=3*" %%a in ('dir C:') do set "sz=%%a %%b"
echo %sz%
pause
поэтому лучше так
Код: Выделить весь код
@echo off
for /f "tokens=2 delims=:" %%a in ('fsutil volume diskfree C:') do set fr=%%a&call set fr1=%%fr:~1,2%%&call set fr2=%%fr:~3%%&goto l
:l
 echo:Свободно на диске C: %fr1%,%fr2%Гб
pause
или так
Код: Выделить весь код
@echo off
for /f "tokens=2 delims==" %%a in ('wmic logicaldisk where ^(DriveType^=3 and MediaType^=12 and DeviceID^="%~d0"^) get FreeSpace /value^|find "="') do set "fc=%%a"
echo %fc:~,-1%
pause

Последний раз редактировалось alpap, 11-06-2018 в 12:41.

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:06, 11-06-2018 | #3