Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.81/450: Рейтинг темы: голосов - 450, средняя оценка - 4.81
11 / 4 / 0
Регистрация: 16.03.2013
Сообщений: 10

Проверка свободного места на диске в cmd

16.03.2013, 22:50. Показов 87233. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пользуясь подсказками Dragokas и яндекса сделал для себя такую штуку freespace.cmd
после её запуска получаю файлик freespace.cmd.txt:
Windows Batch file
1
2
3
4
Free space C:  128 Gb of  160 Gb
Free space D:  410 Gb of  500 Gb
Free space E:  16 Gb of  20 Gb
Free space F:  1038 Gb of  1479 Gb
Сам командник:
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@echo off
setlocal enableextensions enabledelayedexpansion
echo.>%0.txt
 for %%j in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
 rem echo %%j
 
 
set sFreeSize=0
set /a c=0
for /f "skip=1 tokens=2 delims=:" %%i in ('fsutil volume diskfree %%j:') do (
  set /a c+=1
  rem echo !c! %%i
  if !c!==1 set sFreeSizeOf=%%i
  if !c!==2 set sFreeSize=%%i
)
 
if NOT !sFreeSize!==0 echo Free space %%j: !sFreeSize:~0,-9! Gb of !sFreeSizeOf:~0,-9! Gb>>%0.txt
rem :~0,-9
 )
endlocal
p.s.1. дальше его хватаю и отправляю себе на мыло zerat-кой
p.s.2. Размеры взяты грубо и формально неправильно: перевод в Gb ведется тупо обрезанием последних 9-ти цифорок. Но дает общую картину.
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.03.2013, 22:50
Ответы с готовыми решениями:

Сравнение свободного места на диске и его освобождение
Добрый день! Хотел уточнить по коду @echo off &setlocal enableextensions &chcp 1251 >nul set DISK=E: set SPACE=15 for /f...

Определить общее количество ОЗУ и свободного места на системном диске
Доброго времени суток. Нужно определить общее количество оперативной памяти и свободного места на системном жестком диске (для...

Количество свободного места на диске
Мне вообще-то нужно узнать когда заполниться определённый диск, после этого совершить необходимые действия. Поиск на форуме и в интернете...

22
 Аватар для Angry Old Man
3600 / 753 / 317
Регистрация: 26.03.2022
Сообщений: 1,415
Записей в блоге: 1
24.12.2024, 07:48
Студворк — интернет-сервис помощи студентам
vampir551, Могу предположить, что Вы плохо скопировали код. Копирую код с портала, запускаю - у меня работает.
Еще раз проанализировал код, сделал одно изменение для повышения надежности (если на диске меньше гига).
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
@Echo Off &Cls
 
    Set /A Space=21475 &Rem 20Г=21474'836480 байт усекли на 6 разрядов
 
    FOR /F "tokens=1,2* delims=: " %%i In ('"WMIC LogicalDisk where DriveType=3 Get FreeSpace, Name, Size |Find ":""') DO (
        Set "S=%%i
        Call Set "Fsize%%j=%%S:~0,-6%%"
    )
    Echo Free disk space Mbyte bytes on disks: &Set "Fsize"
 
    Set "Disk="
    If "%Disk%"=="" If Not "%FsizeE%"=="" If %FsizeE% GTR %Space% Set "Disk=E" 
    If "%Disk%"=="" If Not "%FsizeD%"=="" If %FsizeD% GTR %Space% Set "Disk=D" 
    If "%Disk%"=="" If Not "%FsizeC%"=="" If %FsizeC% GTR %Space% Set "Disk=C" 
 
    If "%Disk%"==""  (Echo There is not enough disk space. &Pause &Exit /B 2)
 
    Echo. &Call Echo Here we make the necessary utility on the %Disk% (FreeSpace=%%Fsize%Disk%%% Mbyte)
Pause
Exit /B
Файл прилагаю, уберите только расширение .txt и запустите без каких-либо изменений.
Вложения
Тип файла: txt я241223.bat.txt (770 байт, 2 просмотров)
0
 Аватар для Angry Old Man
3600 / 753 / 317
Регистрация: 26.03.2022
Сообщений: 1,415
Записей в блоге: 1
24.12.2024, 08:36
vampir551, Мой предыдущий пост не решает Вашу проблему, проигнорируйте его
Исправленный вариант (у Вас мало места на дисках)
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@Echo Off &Cls
 
    Set /A Space=21475 &Rem 20Г=21474'836480 байт усекли на 6 разрядов
 
    FOR /F "tokens=1,2* delims=: " %%i In ('"WMIC LogicalDisk where DriveType=3 Get FreeSpace, Name, Size |Find ":""') DO (
        Set "S=%%i"
        Call Set "Fsize%%j=%%S:~0,-6%%"
    )
    If "%FsizeE%"=="" Set "FsizeE=0" &If "%FsizeD%"=="" Set "FsizeD=0" &If "%FsizeC%"=="" Set "FsizeC=0"
 
    Echo Free disk space Mbyte bytes on disks: &Set "Fsize"
 
    Set "Disk="
    If "%Disk%"=="" If %FsizeE% GTR %Space% Set "Disk=E" 
    If "%Disk%"=="" If %FsizeD% GTR %Space% Set "Disk=D" 
    If "%Disk%"=="" If %FsizeC% GTR %Space% Set "Disk=C" 
 
    If "%Disk%"==""  (Echo There is not enough disk space. &Pause &Exit /B 2)
 
    Echo. &Call Echo Here we make the necessary utility on the %Disk% (FreeSpace=%%Fsize%Disk%%% Mbyte)
Pause
Exit /B
Вложения
Тип файла: txt я241223.bat.txt (808 байт, 9 просмотров)
1
0 / 0 / 0
Регистрация: 13.06.2019
Сообщений: 4
24.12.2024, 21:39
Angry Old Man, Спасибо, этот код работает))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.12.2024, 21:39

Перезапись свободного места на диске
Вот такая странная задача. В программе должна быть функция удаления заданного файла и возможность перезаписать эти кластеры, дабы сделать...

Мониторинг свободного места на диске
Здравствуйте знатоки. Имеется задача: сделать скрипт, чтобы мониторил свободное место на дисках "C" и "D" Win 2008...

Нет свободного места на диске
Здравствуйте!У меня забит диск на MacBook Pro retina 13.Пишет что забито 20 гб фильмами,которых у меня нет!Может где-то они глубоко...

Мало свободного места на диске С
На диске С всего 5 гигов памяти: 3 - занято Windows, остальные 2 - не знаю чем :(. Все программы установлены на диск D. Помогите освободить...

Нет свободного места на диске
Alcohol создал образ диска. получилось 2 файла: один 5кб, другой 4580896кб. Тот файл, что за 2Гб нужно переместить в локальный диск Е....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
23
Ответ Создать тему
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru