Notefix/2.Areas/Системне адміністрування/Чистка старих замовлень в паппці.md

28 lines
No EOL
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Код для [[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