Я пытаюсь проверить, если два компьютера соединены с помощью следующего сценарияPowershell Получить-Job дает «не может индексировать в нулевую ошибку массива»
$array ='PC1','PC2'
for ($i=0; $i -lt $array.length; $i++) {
Start-Job –Name TestConnection$i –Scriptblock {
if(test-connection $array[$i] -count 1 -quiet){
write-host Success
}
else { write-host No connection
}
}
}
Когда я пытаюсь сделать Receive-Job или для одного I get "Невозможно индексировать нулевой массив". Что я делаю неправильно?
Я бы сказал, что в контексте скриптового блока не существует ни '$ array', ни' $ i', где возникает ошибка нулевого массива. Часть 'receive-job' выглядит так, как будто она работает правильно – arco444
Я думал, так как' $ array' находится за пределами блока, он будет доступен? –
Вы можете эхо-значения внутри скриптового блока? – arco444