Как в Windows 10 удалить файлы старше N-дней

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


Рассмотрим все три варианта.

Удаление старых файлов с помощью Проводника

Лента Проводника Windows 10 и 8.1 содержит инструмент, который позволяет отсортировать все файлы в каталоге по дате изменения, типу, размеру и некоторым другим свойствам. Допустим, вы хотите удалить файлы старше одного месяца. Зайдите в папку с залежавшимися в ней файлам и нажмите на клавиатуре F3. При этом вы будете переключены в ленте Проводника в раздел поиска.

Кликните по иконке «Дата изменения» и выберите в выпадающем списке нужный период времени, в данном случае месяц.

Проводник - Дата изменения

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

Удаление старых файлов в командной строке

Для удаления файлов с «истёкшим сроком годности» мы будем использовать консольную утилиту ForFiles.exe, отвечающую за выбор объекта и выполнение с ним указанного действия. Утилита поддерживает несколько параметров, а именно:

/S — позволяет выполнять рекурсивный поиск.
/P — указывает путь к разделу или каталогу.
/D — указывает количество дней с момента последней модификации.
/C — задаёт команду действия над файлом.

В команде ForFiles также можно указывать возвращающие различные значения переменные, например, @file, которая возвращает имя файла и которую мы будем использовать. Удалим для примера все файлы старше 10 дней в папке «Картинки», лежащей в корне системного диска.

Открываем командную строку и выполняем такую команду:

В примере используются три ключа /p (путь), /s (рекурсия) и /d (количество дней), а также команда удаления del и переменная имени файла @file. Как только мы нажмём ввод, ForFiles пробежится по всему содержимому папки «Картинки», включая вложенные каталоги и удалит все файлы старше 10 дней.

Консольная утилита ForFiles.exe

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

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

Удаление старых файлов с помощью PowerShell

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

PowerShell - Get-ChildItem

Результат будет аналогичным предыдущему.

Обратите внимание, что в команде также используется рекурсия (-Recurse) и указание даты в днях AddDays(-10).

Теги: , ,

Вам может быть интересно:

Поделиться в соц сетях:

Twitter Facebook Vk Googlepluse Linkedin

Подпишитесь на обновления этого блога по RSSRSS, RSSMAILEmail или TwitterTwitter!

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Обсуждаемые темы:

Авторизация
*
*
Регистрация
*
*
*
Генерация пароля