Ошибка при попытке удалить элементы в каталоге Windows Temp с помощью команды invoke - PullRequest
0 голосов
/ 10 января 2019

Следующая ошибка отображается примерно через 5 минут при попытке удалить содержимое временного каталога Windows.

Сообщение об ошибке:

Обработка данных для удаленной команды завершилась сбоем со следующим сообщением об ошибке: WSManFault xmlns: f = "http://schemas.microsoft.com/wbem/wsman/1/wsmanfault" Code =" 3762507597 "

$WinTemp = "$env:SystemDrive\Windows\Temp\*"
Write-Host "Emptying $WinTemp" -ForegroundColor Cyan  
Remove-Item -Recurse $WinTemp -Force -Verbose
Write-Host "[DONE]" -ForegroundColor Green -BackgroundColor Black

Каталог Wintemp составляет около 4 ГБ плюс, так что я думаю, что существуют ограничения wsman или что-то в этом роде?

Мой текущий MaxMemoryPerShellMB установлен на = 1024

Кто-нибудь видел это раньше? Если эта ошибка относится к ограничениям памяти, возможно ли создать сценарий, который будет пытаться удалять от 50 до 100 элементов одновременно, вместо того, чтобы пытаться обработать все элементы перед попыткой удаления?

Примерно так:

$WinTemp = "$env:SystemDrive\Windows\Temp\*"

# Remove Windows Temp Directory

$index = $WinTemp.ItemCount
$page = 0
$pagesize = 5
$sleep = 1
$verbose = $true

while ($index -ge 0) {
    if ($verbose) {
        $("Deleting item at index $($index).")
    } 

    if ($page -lt $pagesize) {
        try {
            $WinTemp.Items[$index].Delete()
            Write-Host "Deleting Item"
        }
...