Какой сервис перезапускается первым, когда мы ставим 2 или более аргумента (или в это же время)? - PullRequest
0 голосов
/ 22 января 2019

Мне нужно перезапустить 2 службы, но сначала vmicvss, а затем vss.

Get-Service -Name vmicvss, vss | Restart-Service

Общие службы vss нуждаются в vmicvss для правильной работы, и я хочу знать, как именно выполняется этот код. Это как:

Restart-Service vmicvss
Restart-Service vss

Или в это же время или случайный момент.

1 Ответ

0 голосов
/ 22 января 2019

Get-Service и Restart-Service очевидно, вывод / перезапуск служб в в алфавитном порядке при задании массива имен через параметр -Name. [1]

В отличие от этого, , предоставляющий имена / объекты обслуживания через конвейер , выполняет порядок ввода :

# CAVEAT: Names passed to -Name are *sorted alphabetically*,
#         so 'vmicvss' is processed before 'vss', due to coming first
#         alphabetically.
Get-Service -Name vss, vmicvss | Restart-Service

# OK - with pipeline input, order is honored.
'vmicvss', 'vss' | Get-Service | Restart-Service

# OK (you don't need Get-Service in your scenario)
'vmicvss', 'vss' | Restart-Service

[1] Начиная с Windows PowerShell v5.1 / PowerShell Core 6.2.0-preview.3;это проблемное поведение обсуждается в этой проблеме GitHub .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...