Excluindo arquivos com mais de X dias de diretórios diferentes usando forfiles

0

Eu gostaria de criar um arquivo de lote que exclua arquivos (somente arquivos, não pastas nem subpastas) de diretórios diferentes (mais de 100 diretórios diferentes) com mais de 1 dia e execute esse lote todos os dias no agendador de tarefas.

Eu encontrei este script, mas preciso adaptá-lo para excluir arquivos em vários diretórios ... Qualquer ajuda por favor sobre como conseguir isso? ou se esse lote funcionar em diretórios diferentes?

@echo off
:: set folder path
set dump_path=c:\shares\dump

:: set min age of files to delete
set max_days=1

:: remove files from %dump_path%
forfiles -p %dump_path% -m *.* -d -%max_days% -c "cmd  /c del /q @path"

:: remove sub directories from %dump_path%
forfiles -p %dump_path% -d -%max_days% -c "cmd /c IF @isdir == TRUE rd /S /Q @path"
    
por Mike G 15.07.2014 / 09:33

1 resposta

1

Suponho que você precisa adicionar um foreach-object "loop", onde você pode adicionar uma lista de pastas que deseja limpar em um arquivo de texto ou matriz e, em seguida, executar foreach-object em torno de seu outro código.

mais informações sobre objeto-objeto

    
por 15.07.2014 / 11:42