Я довольно новичок в powershell.Ниже приведена моя попытка вернуть записи программного обеспечения в список систем с помощью команды invoke.Это работает.Тем не менее, кажется, что все результаты сохраняются в памяти, а затем экспортируются в CSV все сразу.Вместо этого я хотел бы выгрузить результаты партиями или по мере их возврата.Какой бы самый простой метод.Таким образом, я могу запускать аналогичные подобные CMD с наших серверов, не загоняя мой сервер, на котором выполняются сценарии, чья память в данный момент загружена на 99%, а затем процессор переходит на 99% после завершения сценария, чтобы разгрузитьрезультаты.
$IC_ScriptBlock = {
Get-itemproperty -Path Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\currentversion\Uninstall* |
Select Publisher, DisplayName, DisplayVersion, installDate
}
$IC_Params = @{
ThrottleLimit = 100
ScriptBlock = $IC_ScriptBlock
ComputerName = (Get-Content "C:\Users\JT\Desktop\Scripts\laptops.txt")
}
Invoke-Command @IC_Params |
Export-csv -NoTypeInformation -Path "C:\Users\JT\Desktop\Scripts\laptops.csv" -Delimiter ";"