Powershell Remove-Item get Loggingfile - PullRequest
       1

Powershell Remove-Item get Loggingfile

0 голосов
/ 12 октября 2018

Я, наверное, искал всю сеть, но я не могу помочь себе.Иначе я просто неспособен.Все, что я хочу, это удалить папки через 30 дней и отобразить результаты в простом файле .log.

dir "C:\Users\sam\Desktop\Files_todelete\*" -ErrorAction SilentlyContinue | Where { ((Get-Date) - $_.LastWriteTime).days -gt 30 } | Remove-Item -Recurse 

Это работает для меня, но я попробовал почти все, чтобы записать результаты.Надеюсь, вы поможете мне решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 15 октября 2018

Так что в этом случае у меня это сработало, но я хочу использовать скрипт для сетевых дисков.Если я отредактирую путь, все будет в порядке.Но проблема здесь в разрешении.Поэтому я нашел решение с помощью Get-ChildItem -Directory.Мой вопрос здесь может передать это перед командой Remove-Item?

Как:

$ LogFile = '\ netshare \ folder \ log.txt'

dir"\ netshare \ Files_todelete *" -ErrorAction SilentlyContinue |

Где {((Get-Date) - $ _. LastWriteTime) .days -gt 30} |

ForEach-Object {

Get-ChildItem -Directory | Remove-Item $_.FullName -Recurse
        Out-File -InputObject $('Removed {0}' -f $_.FullName) -FilePath $LogFile -Append
    } 

Логически Get-ChildItem должен находиться перед циклом ?!Но я не настолько тверд, чтобы правильно редактировать начало цикла.

0 голосов
/ 12 октября 2018

Вам необходимо включить часть логирования в ваш скрипт.Вы можете сделать foreach loop для каждого элемента, который необходимо удалить, и записать активность в файл журнала.Вот пример:

$LogFile = 'C:\log.txt'
dir "C:\Users\sam\Desktop\Files_todelete\*" -ErrorAction SilentlyContinue | 
    Where { ((Get-Date) - $_.LastWriteTime).days -gt 30 } | 
        ForEach-Object {
            Remove-Item $_.FullName -Recurse
            Out-File -InputObject $('Removed {0}' -f $_.FullName) -FilePath $LogFile -Append
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...