forfiles удаление папок старше n дней

CMD Скрипт удаление файлов старше n дней

Удаление файлов через cmd утилитой forfiles.exe

Пример как с ее помощью можно удалять бекапы старше 20 дней:

обычный батник — и вуаля само делает неинтересную работу..

справка по FORFILES

Выбор файла (или набора файлов) и выполнение команды

с этим файлом. Программа полезна для пакетных заданий.

/P Путь, с которого начинается поиск.

По умолчанию используется текущая

/M Поиск файлов с помощью маски.

/S Рекурсивное выполнение программы forfiles

во всех подпапках, аналогично «DIR /S».

/C Команда, которая выполняется для каждого файла.

Строки команд необходимо заключать в прямые

Команда по умолчанию «cmd /c echo @file».

Следующие переменные могут использоваться

@file — возвращает имя файла.

@fname — возвращает имя файла без

@ext — возвращает только расширение имени

@path — возвращает полный путь к файлу.

@relpath — возвращает относительный путь к

@isdir — возвращает значение «TRUE», если типом

файла является папка, и «FALSE» для файлов.

@fsize — возвращает размер файла

@fdate — возвращает дату последнего изменения

@ftime — возвращает время последнего изменения

Для включения специальных символов в строку команды

следует использовать шестнадцатеричный код символа

в формате 0xHH (например, 0x09 для табуляции).

Перед внутренними командами CMD.exe необходимо ставить

/D Выбор файлов, у которых дата последнего изменения

больше или равна (+) либо меньше или равна

(-) указанной дате при использовании формата

«dd.MM.yyyy»; либо файлов, у которых дата последнего

изменения больше или равна (+)

текущей дате плюс «dd» дней либо меньше или

равна (-) текущей дате минус «dd» дней.

Допустимым числом дней «dd» является любое

число в диапазоне 0 — 32768.

«+» используется по умолчанию, если знак не указан.

/? Вывод справки по использованию.

FORFILES /P C:\WINDOWS /S /M DNS*.*

FORFILES /S /M *.txt /C «cmd /c type @file | more»

FORFILES /P C:\ /S /M *.bat

/C «cmd /c echo @path 0x09 был изменен 30 дней назад»

FORFILES /D 01.01.2001

/C «cmd /c echo @fname является новым с 1-янв-2001»

FORFILES /D +25.1.2011 /C «cmd /c echo @fname является новым сегодня»

FORFILES /M *.exe /D +1

FORFILES /S /M *.doc /C «cmd /c echo @fsize»

Источник

Удаление файлов старше n дней

Иногда надо сделать удаление файлов старше n дней. Например Backup’ ы. Можно делать это вручную, отсортировать их по дате и удалить, а можно воспользоваться скриптом. В данном примере мы рассмотрим скрипт для удаления файлов старше n дней и добавим задание в планировщик Windows Server 2012R2.

Иногда надо сделать удаление файлов старше n дней. Например Backup’ ы. Можно делать это вручную, отсортировать их по дате и удалить, а можно воспользоваться скриптом. В данном примере мы рассмотрим скрипт для удаления файлов старше n дней и добавим задание в планировщик Windows Server 2012R2.

Содержание:

1. Скрипт удаления файлов старше n-дней

2. Создание задания в планировщике задач

#Скрипт удаления файлов старше n-дней

Скрипт на самом деле очень простой, создается в PowerShell и выглядит он следующим образом:

Вот так это выглядит в PowerShell:

Осталось только его выполнить и все.

#Создание задания в планировщике задач

Итак, что нам для этого надо?

Выбираем пункт «Создать задачу«:

На вкладке «Общие» задаем имя задания, его описание и пользователя, от которого оно будет выполняться. По умолчанию там будет пользователь, под которым вы вошли в данный момент в систему.

Далее переходим на вкладку «Триггеры» и создаем расписание, когда мы будем запускать наше задания. У меня настроено в 10:00 каждые 2 дня.

Далее идем на вкладку «Действия» и задаем действие, которое будет выполняться. Выбираем «Запуск программы»

программу или сценарий

и указываем путь до PowerShell:

А аргументе указываем путь до нашего скрипта, который мы создали ранее:

Нажимаем «Ок» и еще раз «Ок«

Все, на этом наше задание создано. Осталось дождаться, когда будет выполнено наше действие по расписанию и проверить, все ли правильно было настроено.

Источник

Как автоматически удалять файлы старше X дней в Windows 10

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней

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

Приложение «Настройки» включает в себя «Хранилище» — функцию, которая автоматически запускается при нехватке памяти для освобождения места. Помимо возможности удаления временных файлов, вы также можете включить функцию удаления файлов, которые были в корзине или в папке «Загрузки», которые не изменились за последний месяц. Однако эта функция ограничена и не позволяет отслеживать дополнительные папки, чтобы удалять их файлы, которые не изменились за последние 60 дней.

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

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

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

Как использовать ForFiles для удаления файлов старше X дней в Windows 10

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

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

Разбивка команд ForFiles

Если вы хотите узнать больше об этих ключах, используйте ForFiles /? команду.

Как использовать Task Scheduler для автоматического удаления файлов старше X дней в Windows 10

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

Если вы хотите автоматизировать процесс, вам нужно использовать планировщик задач в Windows 10, чтобы создать задачу, которая выполняет команду с заданными интервалами.

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

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

Источник

Блог вебмастера

создание сайтов, заработок в сети, раскрутка, программирование

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней

Как удалять файлы старше 10 дней на windows

Делаю бекапы каждый день, накапливается не один десяток гигабайт информации. Чистить нужно, тем более старые бекапчики особой важности не несут. Раньше удалял вручную, но потом задумался… Вручную делать это лень, тем более можешь завтыкать, протупить и удалить не то. Короче, ленивый сделает лучше всех — нужно автоматизировать.

Воспользовался встроенной утилитой forfiles. Теперь все делает планировщик задач и несложный bat-ник в две строки. Пример дальше.

Команды forfiles. Примеры

Разберем ключи по порядку:

Также результаты исполнения скрипта можно записать в файл.

Если нужно их записать в файл, то добавьте в конце знак БОЛЬШЕ и адрес куда сохранить файл (лучше всего прописать полный путь).
forfiles /p C:\ /m *.exe /s /c «cmd /c echo @path» > D:\all_exefiles.txt

Вставляем код в cmd:

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней Forfiles. Запись в файл выполненного скрипта

Результат — созданный файл на диске D:\ и его содержимое (можно много интересного найти):

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней Forfiles. Запись в файл выполненного скрипта. Результат

Пример forfiles с переменными путь, дата, размер

forfiles /p D:\ /m *.zip /s /c «cmd /c echo @path изменен @fdate и размером @fsize байт »

Вот результат выполнения скрипта:

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней Команды forfiles. Используем переменные со своим текстом

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

Как удалить папки старше 7 дней с помощью forfiles

Источник

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

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней

В 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 0

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

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней

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

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

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

forfiles удаление папок старше n дней. Смотреть фото forfiles удаление папок старше n дней. Смотреть картинку forfiles удаление папок старше n дней. Картинка про forfiles удаление папок старше n дней. Фото forfiles удаление папок старше n дней

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

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

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

Источник

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

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