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


1

Мне нужно удалить все папки и их содержимое, начиная с имени dailyчерез 30 дней, и все папки, начиная с имени, monthlyчерез 365 дней. К сожалению, ежедневные и ежемесячные резервные копии должны находиться в одной папке.
Вот сценарий, который я пытаюсь использовать, но он не по душе подстановочным знаком. Какие-либо предложения?

forfiles -p u:\backups\daily* -d 30 -c "cmd /c IF @isdir == TRUE rd /S /Q @path"
forfiles -p u:\backups\monthly* -d 365 -c "cmd /c IF @isdir == TRUE /rd /S /Q @path"

Ответы:


2

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

 forfiles -p u:\backups -m daily* -d 30 -c "cmd /c IF @isdir == TRUE rd /S /Q @path"
 forfiles -p u:\backups -m monthly* -d 365 -c "cmd /c IF @isdir == TRUE /rd /S /Q @path"
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.