Сначала посмотри: три строки разведки
Чистка без измерения — гадание. Get-Volume одним словом показывает свободное место на всех томах, а строка топ-файлов находит, где реально живут гигабайты: Get-ChildItem C:\ -Recurse -File -ErrorAction SilentlyContinue | Sort-Object Length -Descending | Select-Object -First 20 FullName, @{n="MB";e={[math]::Round($_.Length/1MB)}}. Запустите её по профилю пользователя вместо C:\ — и она закончится за секунды, а не за минуты. Добавьте сортировку по LastWriteTime — и та же строка превращается в аудит того, что гниёт нетронутым годами.
Однострочник с размерами папок заменяет большинству людей GUI-сканер: Get-ChildItem $env:USERPROFILE -Directory | ForEach-Object { "{0,8:N2} GB {1}" -f ((Get-ChildItem $_.FullName -Recurse -File -ErrorAction SilentlyContinue | Measure-Object Length -Sum).Sum/1GB), $_.Name }. Он обходит каждую папку профиля, суммирует файлы и печатает гигабайты с двумя знаками. На большом профиле это займёт несколько минут — он делает stat() каждому файлу, ту же работу, что и любой сканер диска, только без установки. Последняя строка разведки — аудит, а не удаление: Get-ChildItem "$env:USERPROFILE\Downloads" -Recurse -File | Where-Object LastWriteTime -lt (Get-Date).AddMonths(-6) перечисляет всё в папке Загрузки старше полугода; допишите Sort-Object LastWriteTime — и список пойдёт от старых к новым.
Безопасные срезы — окно администратора не нужно
Этим четырём хватит обычной пользовательской сессии, и каждая пропускает файлы, занятые прямо сейчас, вместо того чтобы падать на них. Чистка temp, Корзина и дампы крахов вместе регулярно освобождают несколько гигабайт на машине, которую никогда не чистили. Перед любой из них допишите -WhatIf к строке Remove-Item и прочитайте, что она собиралась удалить: привычка стоит десяти секунд и предотвращает каждую историю про не ту папку.
- Remove-Item $env:TEMP\* -Recurse -Force -ErrorAction SilentlyContinue — пользовательский temp; занятые файлы пропускаются сами
- Clear-RecycleBin -Force — Корзина на всех дисках, пустая одной строкой
- Get-ChildItem $env:LOCALAPPDATA\CrashDumps -File | Remove-Item -Force — дампы .dmp, которые никто никогда не откроет
- Remove-Item "$env:LOCALAPPDATA\Microsoft\Windows\Explorer\thumbcache_*.db" -Force — кэш эскизов; сначала закройте окна Проводника
- Get-ChildItem "$env:USERPROFILE\Downloads" -File | Where-Object LastWriteTime -lt (Get-Date).AddMonths(-6) — аудит Загрузок из раздела выше, готовый к разбору
Глубокие срезы: окно администратора и уважение
Откройте Терминал Windows (администратор) через Win+X. Под тот же шаблон Remove-Item C:\Windows\Temp\* отдаёт ещё один пласт мусора; Delete-DeliveryOptimizationCache -Force чистит P2P-кэш обновлений, который «Очистка диска» исторически не замечала; DISM /Online /Cleanup-Image /StartComponentCleanup — единственный поддерживаемый способ ужать WinSxS, а /ResetBase добавляйте, только если согласны, что установленные обновления станут несъёмными. powercfg /h off удаляет hiberfil.sys — примерно 40% оперативки в гигабайтах — если вы никогда не гибернируете; powercfg /h /type reduced оставляет быстрый запуск за половину цены.
Последняя строка останавливает службы обновления, вычищает их кэш загрузок и запускает службы обратно — бонусом это лечит застрявшие обновления: Stop-Service wuauserv, bits -ErrorAction SilentlyContinue; Remove-Item C:\Windows\SoftwareDistribution\Download\* -Recurse -Force -ErrorAction SilentlyContinue; Start-Service wuauserv, bits. Если держать тринадцать строк в файле заметок не хочется, чистильщик вроде Kleaner PRO выполняет безопасную половину списка по расписанию, а глубокие срезы оставляет вам. В любом случае сначала измерьте: строки разведки превращают чистку из ритуала в решение.
Вопросы и ответы
Как очистить временные файлы через PowerShell?
Remove-Item $env:TEMP\* -Recurse -Force -ErrorAction SilentlyContinue: занятые файлы пропускаются, а -WhatIf заранее печатает, что уйдёт. Тот же шаблон работает и по C:\Windows\Temp — уже в окне администратора.
Безопасно ли запускать DISM StartComponentCleanup?
Да — это поддерживаемый способ ужать хранилище компонентов WinSxS, и Windows сам запускает его по своему расписанию. /ResetBase добавляйте с оговоркой: установленные обновления потом нельзя будет удалить.
Понятно до покупки: что входит в лицензию
Разовый 30-минутный триал даёт доступ к базовым инструментам. Возможности с меткой PRO остаются закрыты до активации платной лицензии.
Читайте также
Написать нам: [email protected]