Существует ли свойство времени ожидания Powershell Get-Childitem? - PullRequest
0 голосов
/ 15 января 2011

Я пытаюсь использовать командлет GCI для получения информации на многих удаленных компьютерах, некоторые из которых иногда отключены или не отвечают. Есть ли способ указать свойство timeout для get-childitem, чтобы скрипт не зависал в течение 15-20 секунд каждый раз, когда попадает на не отвечающий компьютер?

Спасибо

Томек

Ответы [ 2 ]

2 голосов
/ 15 января 2011

Выполняйте свою работу в задании, затем ожидайте его, используя wait-job (который имеет аргумент времени ожидания):

$job = Start-Job {Sleep -seconds 60}
$res = Wait-Job $job -timeout 5
if(-not $res) { write-Host "Timeout"}
0 голосов
/ 15 января 2011

Или оберните ваш gci в test-connection

if (test-connection $ server -quiet) {gci}
else {"Не удалось подключиться к $ server"}

...