Start-Service 和 Set-Service -Status Running 之间有什么区别?

Start-Service 和 Set-Service -Status Running 之间有什么区别?

我正在将一组服务器上的服务从禁用状态更改为运行状态,并将启动类型设置为自动,我在网上搜索如何远程执行此操作,使用 Set-Service 作为启动类型可以远程工作,但出于某种原因,执行 Get-Service | Start-Service 时出现错误。我找到一个网站,上面说你需要执行 Set-Service -Status Running,这有效,但这真的能启动服务吗?这样做和在本地执行 Start-Service 有什么区别吗?

这是我的最终命令,因为该网站还向我提供了如何执行一行命令的想法:

Get-Service -ComputerName SERVER -Name "SERVICE*" | Set-Service -StartupType Automatic -PassThru | Set-Service -Status Running

我喜欢这样,但似乎使用 Start-Service 命令启动需要几秒钟的服务会立即使用 Set-Service 命令设置为运行,这意味着它可能实际上并没有启动服务。

我确定没问题,但我很偏执,想确定一下。

答案1

Start-Servicecmdlet 无法针对远程计算机运行,因此对于您的情况,使用Set-Service -Status Running是完成任务的唯一方法。是的,它实际上是启动服务。

相关内容