Как выполнить параллельную обработку установки с помощью Powershell Core? - PullRequest
0 голосов
/ 08 февраля 2020

Это мой сценарий для установки Прошивки на нескольких устройствах по одному.

Param(
    [Parameter(Mandatory=$true)][string[]]$IPset,
    [Parameter(Mandatory=$true)][string] $NewFirmwarePath
    )

$sp=$NewFirmwarePath -split "\\"
$firmware=$sp[$sp.Length -1]

foreach ($ip in $IPset)
{  
    $uri="http://"+$ip+"/xat?filename="+$firmware

    try
    {
        Invoke-RestMethod -Method Put -Uri $uri  -InFile $NewFirmwarePath
        Write-host "Device IP:" $IP "is updated successfully" 
    }
    catch
    {
        Write-Host  "Device IP:" $IP " is failed to update"
    }
}

Но я хочу сделать так, чтобы прошивка устанавливалась на нескольких устройствах параллельно. Похоже, что Powershell Core не поддерживает рабочий процесс (foreach -parallel). Поэтому я попытался выполнить задания, но Джобсу не удалось получить доступ к одному и тому же исходному файлу для установки на нескольких устройствах.

Пожалуйста, помогите мне, как я могу заставить его работать параллельно.

...