Я пишу сценарий powershell, который делает снимок экрана после успешного пинга на сервере. Это текущее состояние моего скрипта:
$CSV = Import-Csv -Path .\SOXEvidenceServersList.csv -Header 'VM', 'FQDN'
foreach($fqdn in $CSV) {
ping $fqdn.VM -n 1 -a | Out-String
[void][reflection.assembly]::loadwithpartialname("system.windows.forms")
[system.windows.forms.sendkeys]::sendwait('{PRTSC}')
Get-Clipboard -Format Image | ForEach-Object -MemberName Save -ArgumentList "C:\Users\test\Documents\PowerShellScripts\$($fqdn.VM).png"
Clear-Host
}
Проблема в том, что мой скрипт powershell не ждет, прежде чем сделать снимок экрана, даже после включения | Out-String
или | Out-Null
в 4-ю строку.
Есть идеи, что я делаю не так?