小编Las*_*Cat的帖子

检查PowerShell版本2中的进程和进程状态,并根据单个进程或多个进程获取两个不同的输出?

以下是我正在使用的代码:

$ProcessesToCheckFor = (
    'company_name_uat-Historian'
    )

$FoundProcesses = Get-Process -Name $ProcessesToCheckFor -ErrorAction SilentlyContinue

foreach ($Item in $ProcessesToCheckFor)
    {
    if ($FoundProcesses.Name -contains $Item)
        {
        '{0} runn1ng' -f $Item
        }
        else
        {
        '{0} fai1ed' -f $Item
        }
    }
Run Code Online (Sandbox Code Playgroud)

代码检查company_name_uat-Historian进程是否在服务器上运行,如果它正在运行,它将输出runn1ng,fai1ed如果没有.

问题是,它只在检查一个进程时就像上面的代码一样,但是当你尝试检查进程列表时却没有.

我需要检查一个进程列表,所以当我链接其余的时,如下所示:

$ProcessesToCheckFor = (
'company_name_uat-Historian',
'company_name_uat-KEReviewCollector',
'company_name_uat-lwm',
'company_name_uat-MQAck',
'company_name_uat-MQOutput',
'company_name_uat-SQAC',
'company_name_uat-Store',
'company_name_uat-Store_STS',
'company_name_uat-StoreLegacy',
'spotify'
    )

$FoundProcesses = Get-Process -Name $ProcessesToCheckFor -ErrorAction SilentlyContinue

foreach ($Item in $ProcessesToCheckFor)
    {
    if ($FoundProcesses.Name -contains $Item)
        {
        '{0} runn1ng' -f $Item …
Run Code Online (Sandbox Code Playgroud)

powershell powershell-2.0

3
推荐指数
1
解决办法
668
查看次数

标签 统计

powershell ×1

powershell-2.0 ×1