1.8 KiB
1.8 KiB
Код для Power Shell
#Дата з якою порівнювати. У цьому випадку -7 днів від поточної дати.
$date = (Get-Date).AddDays(-7)
#Шлях до директорії звідки видаляти файли
$path = "D:\WORK\Замовлення"
#Розташування звіту
$report = "D:\WORK\Замовлення\file_list.txt"
#Працюємо з файлами
#Виведення списку всіх файлів без папок (в т.ч. усередині папок) старше значення $date
$filelist = Get-ChildItem -Recurse -Path $path -file | Where-Object -Property CreationTime -lT $date
$filelist | Sort-Object -Property CreationTime | ft CreationTime ,VersionInfo | tee $report
#Видаляємо файли
$filelist | Remove-Item -Recurse
#Працюємо з каталогами
#Виведення списку всіх порожніх директорій(де немає ні файлів ні директорій) старше ніж дата $date
$folderlist = Get-ChildItem -Recurse -Path $path -Directory | Where-Object -Property LastWriteTime -lT $date | where { $_.psiscontainer -eq $true -and $_.GetFiles().count -eq 0 -and $_.GetDirectories().count -eq 0 }
#Виведення списку порожніх директорій (де немає файлів, але є директорії) старше за дату $date
#$folderlist = Get-ChildItem -Recurse -Path $path -Directory | Where-Object -Property LastWriteTime -lT $date | where { $_.psiscontainer -eq $true -and $_.GetFiles().count -eq 0 }
#$folderlist | Sort-Object -Property LastWriteTime | ft LastWriteTime ,FullName | tee $report -Append
#Видаляємо каталоги
$folderlist | Remove-Item -Recurse
#Power_Shell