Сценарий Powershell для подключения диска, подтверждения работоспособности карты и тайм-аута при необходимости - PullRequest
0 голосов
/ 29 января 2019

Я бы хотел, чтобы мой сценарий powershell отображал диск, подтвердил, что диск был подключен, но время ожидания истекло, если это займет более 15 секунд.Это будет использоваться для периодической проверки терминальных серверов, чтобы убедиться, что диски могут быть сопоставлены с ними.Я не уверен, как передать свою функцию на работу, чтобы заставить работать тайм-аут.Я новичок в powershell, если есть лучший способ приблизиться к этому, я могу начать все сначала.

Я считаю, что моя главная ошибка в строке $ job = Start-Job из ScriptBlock через перечисленные аргументы.Это хороший способ приблизиться к моей цели и как я неправильно понимаю требования к началу работы?

function MapDriveTest([string]$DriveName, [string]$DrivePath) {
$timeOutSeconds = 15

New-PSDrive -Name $DriveName -PSProvider "FileSystem" -Root $DrivePath
$Check=Test-Path $DriveName

If ($Check -eq "True") {
 $global:message = "$env:COMPUTERNAME is able to map local drives"
 exit
       }
       else
       {
       $message = "This is not working"
        UpdateLoggingAPI $message
        exit
       }
      }




$job = Start-Job -ScriptBlock {MapDriveTest} -ArgumentList $DriveName, $DrivePath

if (Wait-Job $job -Timeout $timeOutSeconds) {
Receive-Job $job
} 
else 
{
'Timed Out'
}
...