Удаление файлов папок из каталога
Скрипт на очистку каталогов (список путей к папкам указан в "clear.txt"). Список периодически пополняется
Далее, все папки, которые очищаются- записываются в log - C:\Temp\Success_delete.txt (формата "дд.мм.гггг | Success delete | \\share\blabla\")
Папки, которые не удалось очистить - записываются в log - C:\Temp\Fail_delete.txt (формата "дд.мм.гггг | Fail delete | \\share\blabla\")
Код:
import-csv C:\Temp\clear.txt | % {
$path_change=$_.pathchange;
$DST = Get-Date -Format "dd/MM/yyyy"
Remove-Item $path_change -Recurse -Force -ErrorAction SilentlyContinue -Verbose
if (Test-Path $path_change){
"Fail $path_change" | out-file C:\Temp\Fail_delete.txt -Append
}
else{
"$DST Success delete $path_change" | out-file C:\Temp\Success_delete.txt -Append
}
}
Подсобите с добавлением проверки: Если каталог пустой, то писать в log.txt [формата "дд.мм.гггг | Empty folder | \\share\blabla\"
|
DJ Mogarych |
28-01-2020 10:06 2907277 |
В целом как-то так, подредактируйте под себя.
Код:
$date = get-date -f "dd.MM.yyyy"
$dirs = dir D:\temp -Directory
foreach ($dir in $dirs) {
if ((dir $dir.fullname).count -eq 0) {
"$date | Empty folder | $($dir.FullName)" |Out-File d:\temp\log.txt -Encoding utf8 -Append
}
}
|
Сделал так:
Код:
import-csv C:\Temp\clear.txt | % {
$path_change=$_.pathchange;
$date = get-date -f "dd.MM.yyyy"
Remove-Item $path_change -Recurse -Force -ErrorAction SilentlyContinue -Verbose
foreach ($path_change in $path_changes) {
if ((dir $path_change.fullname).count -eq 0) {
"$date | Empty folder | $($path_change.FullName)" |Out-File C:\Temp\log.txt -Encoding utf8 -Append
}
if (Test-Path $path_change){
"Fail $path_change" | out-file C:\Temp\Fail_delete.txt -Append
}
else{
"$DST Success delete $path_change" | out-file C:\Temp\Success_delete.txt -Append
}
}
}
Но работает ни как надо.
Наверное я как то неверно исправил. Посодействуйте пожалуйста.
Т.е. нужно, чтобы создавалось три лога: 1. Если из папки удалились файлы; 2. Если папки пусты; 3. Если не удалось удалить из какой то папки какой либо файл.
|
Время: 11:29.
© OSzone.net 2001-