Цикл Foreach не проходит через список записей - PullRequest
0 голосов
/ 18 сентября 2018

Я пытался выполнить поиск несколько раз, но не решил проблему.У меня есть список серверов в $ mediaagentlist, цикл foreach должен проходить через каждый из них и получать состояние определенных служб:

    $mediaagentlist = "cs0400ma01
cs0400ma02"

[string]$Commcell_Input = $args[0] 
$MAChoice = $args[1]

if ($MAChoice -eq $null)
        {
            Write-Output "No media agent was specified, running against all MAs in the Commcell..."

            #Run this loop for each MA which is stored in Mediaagentlist
            foreach ($Mediaagent in $Mediaagentlist)
            {
                Write-Output $Mediaagent
                $GxCLMgrS_State = Invoke-Command -ComputerName $Mediaagent {Get-Service -name "GxClMgrS(Instance001)"}
                $GXMMM_State = Invoke-Command -ComputerName $Mediaagent {Get-Service -name "GXMMM(Instance001)"}
                $GxCVD_State = Invoke-Command -ComputerName $Mediaagent {Get-Service -name "GxCVD(Instance001)"}

                Write-Output "Client manager service state: " $GxCLMgrS_State.Status
                Write-Output "Media manager mount service state: " $GXMMM_State.Status
                Write-Output "Communications service state: " $GxCVD_State.Status

            }


        }

Как мне исправить это, чтобы каждый цикл проходил черезсписок записей в $ mediaagentlist и код запуска для каждого сервера?

Заранее спасибо!

1 Ответ

0 голосов
/ 18 сентября 2018

Похоже, что ваша проблема здесь

$mediaagentlist = "cs0400ma01
cs0400ma02"

Похоже, вы пропустили закрывающую цитату на слово и запятую

try

$mediaagentlist = "cs0400ma01", "cs0400ma02"

или

$mediaagentlist = @("cs0400ma01", "cs0400ma02")

Или вы можете определить многострочную строку, а затем разделить ее на новые строки, если есть причина, по которой вам нужно, чтобы ввод был одной многострочной строкой:

$mediaagentlist = "cs0400ma01
cs0400ma02" -split '[\r\n]+'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...