问题
I need to start a windows service via Powershell with a '1' as a parameter, like below:
So basically I want to do something like this with powershell:
Start-Service _MyService 1 <- won't work
Googling has produced nothing of note on this, perhaps I'm looking for the wrong thing, but I can't believe it's not possible. Clues anyone?
回答1:
An alternative is to use the Get-Service cmdlet to obtain a service controller, and then invoke its Start() method.
# "ServiceName" != "Display Name"
$yourService = Get-Service "ServiceName"
$yourService.Start(1)
If you need to supply multiple arguments (credit to @Mark):
$yourService.Start(@('arg1','arg2'))
回答2:
You can invoke sc.exe that allows starting services with parameters:
Invoke-Expression "sc.exe start _MyService 1"
来源:https://stackoverflow.com/questions/37337718/powershell-start-windows-service-with-a-parameter