我编写了一个脚本来验证服务被成功地停止了,如果没有的话,它将杀死正在运行的进程。下面是我的剧本。
让我知道需要增加什么。我对powershell非常陌生。
$configData = (Get-Content (Join-Path $PSScriptRoot "config\gp.processes.Json") -Raw | ConvertFrom-Json)
$svcProcessList = $configData.UI
foreach ($svcProcess in $svcProcessList) {
Write-Output "::INFO::Looking for $svcProcess on $computerName to kill"
$sumOfReturnValues += stop-Process -processName $svcProcess -computerName $computerName
}
if($sumOfReturnValues -ne 0)
{
Write-Error "Unable to stop Services as I am unable to terminate all the related processes"
Exit 1
}错误信息“
找不到与参数名“computerName”匹配的参数
发布于 2019-06-25 00:22:02
正如@LotPings所指出的,问题不在于错误所暗示的计算机名。尝试停止已经停止的服务时的命令错误。Get-进程返回相同的错误。
仍然可以通过静默这些错误并在它们实际工作时返回失败来使用这些cmdlet。
$configData = (Get-Content (Join-Path $PSScriptRoot "config\gp.processes.Json") -Raw | ConvertFrom-Json)
$svcProcessList = $configData.UI
$ReturnValues = @()
foreach ($svcProcess in $svcProcessList) {
Write-Output "::INFO::Looking for $svcProcess on $computerName to kill"
stop-process -Name $svcProcess -computerName $computerName -ErrorAction SilentlyContinue
try {
if (get-process -Name $svcProcess -computerName $computerName -ErrorAction 0 |
select -expandproperty Responding) {
throw "error to catch block"
}
}
catch {
$ReturnValues += $svcProcess
}
[int]$sumOfReturnValues = $ReturnValues | Measure-Object |
Select-Object -ExpandProperty count
}
if ($sumOfReturnValues -ne 0) {
Write-Error "Unable to stop Services as I am unable to terminate all the related processes"
Exit 1
}https://serverfault.com/questions/968578
复制相似问题