我如何在几个Powershell单线(一个启动,一个停止)中实现以下目标?
我想在Powershell中启动服务MyService,并且还要启动MyService Required的所有其他服务(即MyService Depends的服务),是尚未开始]。然后,我希望能够停止MyService和我最初使用MyService启动的所有服务,但不是MyService所依赖的所有other服务已经已经启动] 当我启动MyService。
要澄清:如果MyService
Requires Service1,Service2和Service3和Service3是also Required] 并且已经为UnrelatedService运行,那么我不需要/想要启动Service3来启动MyService。 Nor我是否要在停止MyService时停止Service3,因为这样<< UnrelatedService会失败。我do想要停止MyService时停止Service1和Service2,因为它们是MyService的仅必需。其次,我想递归地执行此操作,这样,如果还有其他RequiredServices到Service1
和Service2(回想起[[Service3已经在运行,因此服务也在运行然后,我还要启动<< Service1和Service2 Depend且<的那些其他服务。成功的结果是[[在此之后运行的所有服务]我停止MyService 与[]相同 [在此之前运行的所有服务]的列表我启动了MyService及其上的依赖项[[Depends。我的尝试Get-Service MyService |
Select -expand RequiredServices |
Start-Service
启动服务:服务“我的完整服务名称(myservice)”不能为由于以下错误而启动:无法启动服务MyService电脑 '。'。在第1行:char:57 + Get-Service MyService |选择-expand RequiredServices | Start-Service + + CategoryInfo:OpenError:(System.ServiceProcess.ServiceController:ServiceController)[启动服务],ServiceCommandException + FullyQualifiedErrorId:CouldNotStartService,Microsoft.PowerShell.Commands.StartServiceCommand
Get-Service MyService | select -ExpandProperty RequiredServices | % {Start-Service $_.Name}