Invoke-WmiMethod - быстро исправляет проблемы PsRemoting / WinRM (для использования Invoke-Command) - PullRequest
0 голосов
/ 06 июня 2018

В случае, если у вас есть компьютеры, которые недоступны с помощью Invoke-Command, либо потому, что WinRm не запущен, либо PsRemoting отключен, это хороший, надежный способ, которым я всегда находил работы, по крайней мере, в моей среде:

 $target_comp = "abc1234"

 Invoke-WmiMethod -ComputerName $target_comp -Path win32_process -Name create -ArgumentList "powershell.exe -command Enable-PSRemoting -SkipNetworkProfileCheck -Force"
 Invoke-WmiMethod -ComputerName $target_comp -Path win32_process -Name create -ArgumentList "powershell.exe -command winrm quickconfig -quiet"


 do {
     $testpsremoting = invoke-command -computername $target_comp -scriptblock {"test"}
    } while (!$testpsremoting) 



    #REST OF CODE

Объяснение:

-Объявить переменную вашего компьютера.
-Запустить две команды, чтобы включить PsRemoting и настроить WinRM через Invoke-WmiMethod.
* С момента Invoke-WmiMethod мгновенно возвращается без ОЖИДАНИЯ для того, чтобы команды действительно были выполнены:
-Создать цикл, который выполняется до тех пор, пока не будет включена функция PsRemoting (до тех пор, пока не сработает тест Invoke-Command).

Не болееПроблемы с Invoke-Command!Наслаждайтесь и настраивайте на все, что душе угодно.

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

Вопрос изменен, чтобы дать ответ и полезное исправление для сообщества.

0 голосов
/ 06 июня 2018

Вы можете использовать Get-wmi, чтобы получить результат напрямую

Get-WmiObject Win32_service -ComputerName $poste | select State,Name,DisplayName
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...