В Windows 10 контроль памяти — это функция, которая автоматически освобождает место, когда у вас заканчивается хранилище. Эта функция работает, удаляя ненужные системные файлы, те файлы, которые находились в корзине или папке «Загрузки» более месяца, и делая содержимое OneDrive, которое вы использовали какое-то время, доступным только в Интернете .
Хотя эта функция может быть полезна для управления пространством для хранения, она ограничена и не предлагает возможности вручную добавлять разные места для отслеживания и удаления файлов, которые не изменились за последний месяц или около того. Если вы храните неважные файлы в другом месте, можно использовать PowerShell и планировщик заданий для мониторинга и очистки файлов из любой папки старше указанного количества дней.
В этом руководстве вы узнаете, как автоматически удалять файлы, которые не изменялись в течение последнего месяца или любого количества дней, указанного вами в Windows 10 . (Эти шаги также должны работать в Windows 11. )
Важно: рекомендуется протестировать команду, используя временную папку, так как ввод неправильной команды может привести к удалению неправильных файлов.
Удалить файлы старше X дней в Windows 10 с помощью PowerShell
Если у вас есть разные папки с большим количеством файлов, и вы хотите очистить их, удалив те, которые старше определенных дней, вы можете выполнить следующие действия:
-
Откройте Пуск в Windows 10.
-
Найдите Windows PowerShell , щелкните результат правой кнопкой мыши и выберите параметр « Запуск от имени администратора ».
-
Введите следующую команду, чтобы удалить файлы, которые не изменялись за последние 30 дней, и нажмите Enter :
Get-ChildItem –Путь "C:\путь\к\папке" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} | Убрать предмет
Измените путь: "C:\path\to\folder"с расположением папки, которую вы хотите удалить, и -30выберите файлы с датой последнего изменения в приведенной выше команде.

Автоматически удалять файлы старше X дней в Windows 10 с помощью планировщика заданий
Команда в предыдущей инструкции позволяет удалять файлы в папке старше 30 дней, но вам нужно открывать PowerShell и выполнять команду вручную каждый раз, когда вы хотите освободить место.
Создайте скрипт PowerShell с помощью Блокнота
Чтобы запустить задачу с помощью планировщика заданий, вам необходимо создать сценарий PowerShell, выполнив следующие действия:
-
Откройте Пуск .
-
Найдите Блокнот и щелкните верхний результат, чтобы открыть интерфейс.
-
Скопируйте и вставьте следующую команду в текстовый файл Блокнота:
Get-ChildItem –Путь "C:\путь\к\папке" -Recurse | Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} | Убрать предмет
Измените этот путь: "C:\path\to\folder"с расположением папки вы хотите удалить файлы и изменить -30, чтобы выбрать файлы с датой последнего изменения в приведенной выше команде.
-
Щелкните меню « Файл» .
-
Выберите опцию Сохранить как .
-
Сохраните файл, используя имя и расширение cleanup.ps1 .
Создать задачу с помощью планировщика заданий
Если вы хотите автоматизировать процесс, вам нужно использовать планировщик заданий, чтобы создать задачу, которая выполняет команду через определенные промежутки времени.
-
Откройте Пуск .
-
Найдите планировщик заданий и щелкните результат.
-
Щелкните правой кнопкой мыши папку библиотеки планировщика заданий .
-
Нажмите « Новая папка ».
-
Введите любое имя для папки и нажмите OK . (Мы создаем новую папку, чтобы задачи были организованы и отделены от системных задач.)
-
Щелкните правой кнопкой мыши недавно созданную папку и выберите параметр « Создать задачу ».
-
В поле «Имя» введите название задачи.
-
На вкладке «Общие» в разделе «Параметры безопасности» выберите параметр «Запускать независимо от того, вошел ли пользователь в систему или нет» в разделе «Параметры безопасности». (При выборе этого параметра командное окно не будет отображаться при автоматическом запуске задачи.)
![How to delete files older than X days automatically using PowerShell How to delete files older than X days automatically using PowerShell]()
-
Снимите флажок Не сохранять пароль .
-
Перейдите на вкладку «Триггеры».
-
Нажмите кнопку Создать .
-
В раскрывающемся меню «Начать задачу» выберите «По расписанию » .
-
В разделе «Настройки» укажите, когда вы хотите запускать задачу (например, «Вовремя», «Ежедневно», «Еженедельно», «Ежемесячно»). Какой бы вариант вы ни выбрали, обязательно укажите параметры запуска с правой стороны.
-
Нажмите кнопку ОК .
![How to delete files older than X days automatically using PowerShell How to delete files older than X days automatically using PowerShell]()
-
Щелкните вкладку Действия .
-
Нажмите кнопку « Создать ».
-
Выберите опцию « Запустить программу » в раскрывающемся меню «Действия».
-
В поле «Программа/скрипт» введите следующую команду:
powershell.exe
-
Введите следующую команду в поле «Добавить аргументы» и нажмите кнопку « ОК » .
-ExecutionPolicy Bypass C:\path\to\cleanup.ps1
Измените путь: "C:\path\to\cleanup.ps1"с расположением сценария PowerShell, которое вы ранее создали для удаления файлов в команде.
![How to delete files older than X days automatically using PowerShell How to delete files older than X days automatically using PowerShell]()
-
Щелкните вкладку Настройки .
-
Проверьте следующие параметры:
- Разрешить запуск задачи по требованию.
- Запустите задачу как можно скорее после того, как запланированный запуск будет пропущен.
- Если задача не удалась, перезапустите все.
-
Нажмите кнопку ОК .
-
Введите имя пользователя и пароль администратора (если применимо).
-
Нажмите кнопку ОК .
После выполнения этих шагов сценарий PowerShell будет запускаться по расписанию, удаляя файлы старше указанного вами количества дней. Не забудьте изменить имя или переместить папку в другое место. В противном случае задание будет провалено.