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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Сравнение свободного места на диске до и после

Ответить
Настройки темы
CMD/BAT - [решено] Сравнение свободного места на диске до и после

Новый участник


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

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


Код: Выделить весь код
@Echo off
chcp 1251>null
Title Удаляем. Ожидайте..
<<Здесь нужно определить свободное место>>
del "C:\Users\UserName\AppData\Local\Temp\*.*" /s /q
del "C:\Windows\Temp\*.*" /s /q
<<Здесь снова определяем свободное место и выдаем инфу о том, сколько мы удалили>>
Нужно определить свободное место, почистить временные папки, снова определить свободное место и сравнить результат. Выдать освобожденное место в МБ.
В скриптах не соображаю, рылся по темам - там либо сохранение в файл, либо уже готовые скрипты, в которые я не могу вставить мои дополнения.

Не получаются даже банальные вещи - кодировка не меняется и создается файл null...

Отправлено: 10:49, 08-11-2016

 

Ветеран


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

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


AgentMario, не null, а nul
и у меня, когда освоил арифметику и научился определять свободное место
получилось такое:
@echo off
chcp 1251>nul
setlocal enableextensions enabledelayedexpansion

for /f "usebackq tokens=2 delims==" %%i in (
`wmic.exe LogicalDisk where "Name='c:'" get FreeSpace /value`
) do set sFreeSize=%%i

if defined sFreeSize (
set sFreeSizePseudoMb=%sFreeSize:~0,-7%
)
Title Удаляем. Ожидайте..
del %Temp%\*.* /s /q
for /f "usebackq tokens=2 delims==" %%i in (
`wmic.exe LogicalDisk where "Name='c:'" get FreeSpace /value`
) do set sFreeSize=%%i

if defined sFreeSize (
set sFreeSizePseudoMb1=%sFreeSize:~0,-7%
)
set /a Freed=!sFreeSizePseudoMb1! - !sFreeSizePseudoMb!
echo !Freed! Мегабайт освобождено!
endlocal
exit /b 0

Но для очистки временных файлов лучше использовать cleanmgr /sagerun (например, так - выполнять от админа и команду dism уберите, она не на каждый день)
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:22, 08-11-2016 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


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

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


Благодарю. Работает отлично.

Отправлено: 13:16, 08-11-2016 | #3


Ветеран


Contributor


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

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


По моему скромному мнению многократно быстрее очистить папки с временными файлами не посредством Del, а с помощью Rd в сочетании с Pushd и Popd. Тем более, что Del оставит неудалёнными ненужные пустые папки.
Код: Выделить весь код
@Echo Off
cls
Chcp 1251 >nul

FOR /F "usebackq tokens=2 delims=:" %%s IN (`fsutil volume diskfree C:`) DO Set "S1=%%s" &GoTo :Cont1
:Cont1

Call :RDT "%Tmp%"
Call :RDT "%Temp%"

FOR /F "usebackq tokens=2 delims=:" %%s IN (`fsutil volume diskfree C:`) DO Set "S2=%%s" &GoTo :Cont2
:Cont2

Set /A SS=%S2:~1,-6%-%S1:~1,-6%

Echo %SS% Мегабайт освобождено!

pause
GoTo :Eof

:RDT
	Echo Удаляем временные файлы из %1
	Pushd %1
	Rd /S /Q %1 2>nul
	Popd
GoTo :Eof

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

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

Отправлено: 08:22, 09-11-2016 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Сравнение свободного места на диске до и после

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - Неверное отображение свободного места на диске Quaker_75 Microsoft Windows 7 10 05-02-2015 22:45
Нет звука, свободного места на диске после переустановки Torin38 Microsoft Windows 7 34 11-01-2013 18:19
CMD/BAT - Проверка свободного места на диске hvorost Скриптовые языки администрирования Windows 1 31-10-2011 12:07
Проверка свободного места на диске WoRG AutoIt 2 25-03-2010 17:28
Определение свободного места на диске IGROK Microsoft Windows 2000/XP 8 21-10-2003 15:24




 
Переход