Удалить папки старше 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"
Shawn
источник