gpt4 book ai didi

powershell - Powershell停止服务错误:找不到具有服务名称的任何服务

转载 作者:行者123 更新时间:2023-12-03 00:20:15 24 4
gpt4 key购买 nike

我正在研究用于将供应商软件部署到大型环境的脚本。第一步是停止有问题的服务。该脚本在我们的测试环境中可以很好地执行,但是我不是生产环境中的管理员,因此我确信这是一个权限问题。我无法获得产品环境的管理员权限,因此我需要尝试找出可能需要设置以授予远程停止服务权限的任何内容。我正在发出以下命令来停止服务:

Stop-Service -InputObject $(Get-Service -Computer $destination.Server -Name ("moca."+$destEnv))

当我运行脚本时,我得到:
Cannot find any service with service name 'moca.WMSPRD'.
+ CategoryInfo : ObjectNotFound: (moca.WMSPRD:String) [Get-Service], ServiceCommandException
+ FullyQualifiedErrorId : NoServiceFoundForGivenName,Microsoft.PowerShell.Commands.GetServiceCommand

Cannot validate argument on parameter 'InputObject'. The argument is null or empty. Supply an argument that is not null or empty and then try the command again.
+ CategoryInfo : InvalidData: (:) [Stop-Service], ParameterBindingValidationException
+ FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.PowerShell.Commands.StopServiceCommand

该服务肯定存在,并且如果我进入目标框中并在本地发出stop-service命令,它将执行。因此,有一些原因使我无法远程停止该服务。有任何想法吗?

编辑:
一位同事建议使用WMI,因此尝试将Stop-Service行替换为:
(Get-WmiObject -computer $destination.Server Win32_Service -Filter ("Name='moca."+$destEnv+"'")).InvokeMethod("StopService",$null)

我得到:
Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
+ CategoryInfo : NotSpecified: (:) [Get-WmiObject], UnauthorizedAccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

最佳答案

如果您知道确切的服务名称,可以尝试一下

(Get-WmiObject -computerName $_.name Win32_Service -Filter "Name='moca'").StopService()

我在这里假设服务名称是moca

关于powershell - Powershell停止服务错误:找不到具有服务名称的任何服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12917761/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com