Powershell - remove old files and folders

Share on:

Remove files older than X days, and remove empty folders.

 1# set folder path
 2$dump_path = "c:\Temp\remove-files-ps"
 3
 4# set min age of files
 5$max_days = "-20"
 6 
 7# get the current date
 8$curr_date = Get-Date
 9
10# determine how far back we go based on current date
11$del_date = $curr_date.AddDays($max_days)
12echo $del_date
13
14# delete the files
15Get-ChildItem $dump_path -Recurse | Where-Object { $_.LastWriteTime -lt $del_date } | Remove-Item
16#Get-ChildItem $dump_path -Recurse | Where-Object { $_.LastWriteTime -lt $del_date } | echo
17
18(gci $dump_path -r | ? {$_.PSIsContainer -eq $True}) | ? {$_.GetFiles().Count -eq 0} | Remove-Item
19#(gci $dump_path -r | ? {$_.PSIsContainer -eq $True}) | ? {$_.GetFiles().Count -eq 0} | echo