0
ServiceStatus -Servers "Machine1", "machine2", "machine3" 

workflow ServiceStatus
{
    param([string[]]$servers) 

    foreach -Parallel ($server in $servers)
    {
        Write-Host "Chekcing status in  $server..." -ForegroundColor black -BackgroundColor green

        Get-Service W3SVC -ComputerName $server | Format-Table Name,Status,MachineName -AutoSize 

        if(!$?)
        {
            Out-File $FileName1 -Append -InputObject $server -Encoding ascii
        }
    }
}

我尝试让foreach并行执行,但它给了我一个“foreach 循环附近的语法错误”错误。

4

1 回答 1

0

Format-*cmdlet 只能InlineScript在 PowerShell 工作流的部分内部使用。请参阅此处了解更多信息。也一样Write-Host

此外,您必须在调用它之前定义您的工作流程。

workflow ServiceStatus {
    ...
}

ServiceStatus -Servers "Machine1", "machine2", "machine3" 
于 2015-12-03T15:54:20.337 回答