Запустите файл установки (.exe) на нескольких компьютерах удаленно с помощью powershell. - PullRequest
0 голосов
/ 01 октября 2018

Я пытаюсь запустить exe, скопированный в указанную папку на всех серверах вместе со списком аргументов.Это, однако, происходит без ошибок, копирование файла работает нормально, однако удаленное выполнение установки не удается.

Вот что я пишу.

Пожалуйста, примите во внимание, что любая помощь будетценится.

$servers = Get-Content c:\temp\servers.txt

foreach ($server in $servers){
    "Processing $server"
    Copy-Item -Path "\\$serverA\utility$\Setup.exe" -Destination "\\$server\c$\temp\Setup.exe" -Force

    $copy_complete = Test-Path "\\$server\c$\temp\Setup.exe" 
    if ($copy_complete) {
        "copy successful"
        Invoke-Command -ComputerName $server -ScriptBlock { Start-Process 'c:\temp\Setup.exe'  -ArgumentList '/quiet /noreboot /enable_remote_assistance  /Exclude "Smart Tools agent","Profile Manager WMI Plugin","Personal vDisk"' }
        "$server completed"
    }
    else {
        "Failed copy, retry manually on $server"
    }
}

1 Ответ

0 голосов
/ 01 октября 2018

Вы можете попробовать это с оператором вызова (&)

Invoke-Command -ComputerName $server -ScriptBlock {
    $executable='c:\temp\Setup.exe'
    $arguments='/quiet /noreboot /enable_remote_assistance /Exclude "Smart Tools agent","Profile Manager WMI Plugin","Personal vDisk"'
    & $executable $arguments
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...