Запуск службы на удаленных машинах из текстового файла - PullRequest
0 голосов
/ 16 марта 2020

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

 $computernames= Get-Content ".\temp\ComputerNames.txt" 


foreach ($name in $computernames){
    Get-Service -Name 'Remote Registry' -ComputerName $name | Set-Service -Status Running -StartupType Automatic -WhatIf
}

Основная строка Get-service работает нормально, если я назову ей имя машины. Однако, используя эту переменную $ name, я не могу заставить команду работать. Он продолжает давать мне следующую ошибку:

Get-Service : Cannot find any service with service name 'Remote Registry'.
At line:8 char:5
+     Get-Service -Name 'Remote Registry' -ComputerName $name | Set-Ser ...
+     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Remote Registry:String) [Get-Service], ServiceCommandException
    + FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand

Любой совет приветствуется.

1 Ответ

0 голосов
/ 17 марта 2020

Извините за путаницу. Мое решение работает, но ошибка не указывает на реальную проблему. Мой файл содержит имена компьютеров, разделенные линией и использующие собственные имена. Проблема заключалась в том, что если машина не находится в сети, потому что она либо выключена, либо отсутствует в офисе, то она возвращает ошибку, указанную в моем исходном сообщении. Я не заметил, что некоторые машины были определенно выключены или отсутствовали в офисе. Я ценю усилия каждого в решении проблемы и прошу прощения за потраченное время.

...