28 lines
No EOL
1.8 KiB
Markdown
28 lines
No EOL
1.8 KiB
Markdown
Код для [[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 |