Как найти и удалить старые файлы из системы Windows

Россия+7 (910) 990-43-11
Обновлено: 2024-02-18

В Windows 10 была встроена функция «Контроль памяти», которая, помимо прочего, заботится об удалении самых старых файлов, содержащихся в корзине и в системной папке «Загрузка». Однако, на основании жалоб различных пользователей, контроль памяти перестал автоматически удалять старые файлы из папки «Загрузка».

Вместе стем, контроль памяти и очистка диска, также доступные в предыдущих версиях Windows, по-прежнему остаются отличными инструментами для восстановления пространства.

Независимо от используемой версии Windows вы можете использовать встроенную в операционную систему утилиту ForFiles, чтобы запросить автоматическое удаление файлов старше определенной даты.

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

Ожидаемый синтаксис команды ForFiles выглядит следующим образом:

ForFiles /p путь /m критерии_поиска [/s] [/c "команда"] [/d [{+-}][{дата|день}]]

Вместо пути вы можете указать папку, в которую нужно вмешаться, а критерии_поиска можно заменить директивой, в которой указан тип файла (например, *.docx ).

Параметр /s позволяет также вмешиваться в содержимое подпапок; /c для выполнения команды, заключенной в двойные кавычки. Наконец, /d позволяет указать дату или количество дней: действие, запрошенное с помощью ForFiles, повлияет только на файлы старше указанной даты.

Чтобы удалить файлы старше 60 дней из указанной папки, просто введите следующую команду:

ForFiles /p "X:\path" /s /c "cmd /c del @file /f /q" /d -60

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

Команда, подобная следующей, позволяет удалить файлы, созданные сегодня:

ForFiles /p "X:\path" /s /c "cmd /c del @file /f /q" /d 0

Чтобы избежать нанесения ущерба, вы можете просто заменить del на команду echo, так вы получите список файлов, которые будут удалены, потому что они старше указанной даты:

ForFiles /p "X:\path" /s /c "cmd /c echo @path @file" /d -60

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

Вместо /d -60 можно указать конкретную дату в формате дд/мм/гггг.

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

В командной строке Windows просто используйте net use X: \\сетевой_путь, добавив, возможно, пароль и username.

Вы также можете использовать Планировщик (в поле поиска Windows введите Планировщик заданий), чтобы создать новую задачу на периодическое удаление самых старых файлов в указанной папке.

Зададим параметры удаления файлов из папки по задаче

Чтобы напрямую вызвать утилиту, просто введите ForFiles в поле «Программа или Сценарий», затем укажите все, что следует в поле «Добавить аргументы».

В качестве альтернативы, особенно если вы должны действовать по сетевому пути, просто создайте пакетный файл (.bat), указав путь в окне «Программа или Сценарий».

Используя вкладку «Триггеры», вы можете указать периодичность, с которой хотите очищать указанную папку.


5.0/4