Статьи Автоматизация Создание собственного чистильщика

Создание собственного чистильщика

PDF Печать

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



Создание собственного чистильщика


Для начала откроем Блокнот и создадим bat файл. Назовите его как вам удобно, например «Cleaner». Давайте наполним его командами, которые будут выполняться поочередно, одна за другой.

Первым делом очисти папки TEMP, обычно их бывает несколько

Для этого будем использовать команду DEL (удалить) с параметрами /F /S /Q — папки, подпапки и файлы.

DEL /F /S /Q %WINDIR%\Temp\*.*
DEL /F /S /Q %SYSTEMDRIVE%\Temp\*.*
DEL /F /S /Q %Temp%\*.*
DEL /F /S /Q %Tmp%\*.*

Благодаря переменным командам Windows, мы можем сделать нашу программу гибкой, и использовать на компьютере где операционная система установлена на раздел, например, с буквой D:\,

%WINDIR%\Temp\ — равносильно C:\Windows\temp

%SYSTEMDRIVE% - системный раздел, в большинстве случаем — C:\

%Temp% и %Tmp% — переменные пути для папок временных файлов.


Очистка папки Prefetch


Напомню, в папке Prefetch (.pf расширение) содержится информация о часто открываемых программах и сервисах, для более быстрой их последующей загрузки. Из неё можно всё удалить, система будет грузиться быстрее, а программы (в первый раз) медленнее. Но потом снова система создаст кэш этих часто запускаемых программа. Иногда в папке Prefetch содержится кэш давно удаленных программа, поэтому размеры папки бесконтрольно увеличиваются, и достигают по умолчанию до 400 Мб.

А вот и команда для очистки папки Prefetch:

DEL /F /S /Q %WINDIR%\Prefetch\*.*


Логи, баки, гиды и прочие временные файлы

Система и программные продукты любят вести «бортовой журнал» совершенных действий и ошибок, В зависимости от количества программ, этих файлов может скопиться на десяток мегабайт. Команда для удаления:


DEL /F /S /Q %SYSTEMDRIVE%\*.log
DEL /F /S /Q %SYSTEMDRIVE%\*.bak
DEL /F /S /Q %SYSTEMDRIVE%\*.gid


Суть этих команд в том что будут удалены все файлы по маске (*.log, *.bak, *.gid) на системном диске, включая подкаталоги системного диска.


Папка Dllcache, кто такая и почему так много?


Dllcache нужна для службы Windows File Protection (WFP). Эта служба необходима для обеспечении в целостности системных файлов, т. е. WFP хранит копии каждого защищаемого файла в dllcache и как только кто-то пытается заменить или изменить защищаемый файл, то он будет восстановлен из dllcache. Назначение:
— В dllcache хранятся копии части системных файлов — это большой объём.
— Dllcache растёт за время работы Win XP, а особенно во время установки новых обновлений (патчей).
— Служба WFP конфигурируется и с помощью утилиты sfc.exe. Ей же можно задать max размер dllcache или же полностью отключить данную службу.


Если у вас установлены все драйвера и необходимое программное обеспечение, может избавиться от лишней информации:

Сначала устанавливаем размер кеша в необходимый, например в 0:
sfc /cachesize=0
Затем чистим кеш:
sfc /purgecache
Система самостоятельно заполняет кеш до указанного размера (если он не 0).


Системная программа Disk Cleanup в помощь


Очистка диска


Удалить ненужные файлы можно с помощью Disk Cleanup. Многим наверняка приходилось работать с этим инструментом через графический интерфейс, но его можно запустить и из командной строки. С помощью параметров командной строки (ключей) Disk Cleanup можно настроить на удаление файлов определенных типов. Поначалу работа с командной строкой может показаться слишком сложной, но те, кто освоит ее, смогут убедиться в эффективности данного метода.

При запуске Disk Cleanup из командной строки используется команда Cleanmgr, которая имеет три параметра:

/d

/sageset

/sagerun


Автоматизация удаления файлов с помощью Cleanmgr — двухэтапный процесс. Сначала команда запускается с параметрами /d и /sageset, чтобы указать набор файлов, подлежащих удалению, а затем выполняется повторно с параметром /sagerun для проведения собственно очистки.

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

Параметр /sageset используется для выбора типов файлов, которые следует удалить (например, временные файлы установки, старые файлы Chkdsk), и присвоения данному набору типов файлов уникального номера. Синтаксис команды с параметрами /d и /sageset:

cleanmgr /d X: /sageset:n

где X — символ целевого диска, а n — уникальное числовое значение от 0 до 65535. Disk Cleanup хранит набор файлов и связанный с ним номер в реестре.

Параметр /sagerun используется для обработки утилитой Disk Cleanup набора файлов, указанных параметром /sageset. Команда имеет следующий вид:

cleanmgr /sagerun:n

где n — номер удаляемого набора файлов. При запуске команды с параметром /sagerun параметр /d не применяется.

Покажем, как организовать группу файлов для удаления, а затем применить к ним Disk Cleanup. Необходимо открыть окно командной строки и ввести команду

cleanmgr /d C: /sageset:100

затем нажать клавишу Enter. На экране 1 показано диалоговое окно Disk Cleanup Settings. В этом диалоговом окне следует выбрать типы файлов, подлежащих удалению. По щелчку на кнопке OK Disk Cleanup сохранит эту группу файлов в реестре под номером 100. Затем нужно ввести команду

cleanmgr /sagerun:100

чтобы автоматизировать применение инструмента Disk Cleanup к этим файлам. Таким образом, процедура весьма проста.

Осталось только объединить два этапа в одну команду оператором & — выполнить команду 2 при успешном выполнении команды 1.

Cleanmgr /sageset:65535 & Cleanmgr /sagerun:65535


Что в итоге у нас получилось


DEL /F /S /Q %WINDIR%\Temp\*.*

DEL /F /S /Q %SYSTEMDRIVE%\Temp\*.*

DEL /F /S /Q %Temp%\*.*

DEL /F /S /Q %Tmp%\*.*

DEL /F /S /Q %WINDIR%\Prefetch\*.*

DEL /F /S /Q %SYSTEMDRIVE%\*.log

DEL /F /S /Q %SYSTEMDRIVE%\*.bak

DEL /F /S /Q %SYSTEMDRIVE%\*.gid

sfc /cachesize=0

sfc /purgecache

Cleanmgr /sageset:65535 & Cleanmgr /sagerun:65535

 

Добавить комментарий

Защитный код
Обновить