PowerShell Workflow 中的并行和顺序执行是如何工作的?


PowerShell 工作流是在多于一个节点上并行执行脚本的最佳方式,这节省了产生输出的大量时间,但是我们不总是希望并行地运行所有命令,但还需要其中一些按顺序运行,我们可以使用 PowerShell 工作流来设计并行和顺序命令。

Workflow TestWorkflow{
   parallel{
      Command1
      Command2
   }
   Sequence{
      Command3
      Command4
   }
}

TestWorkflow

在上面的代码中,Command1 和 Command2 将按任意顺序并行执行,而 command3 和 command4 将按串行方式执行,因为它们在顺序块中,如下图所示。

示例

Workflow TestWorkflow{
   parallel{
      Get-CimInstance Win32_LogicalDisk
      Get-CimInstance Win32_BIOS
   }
   sequence{
      Get-Service WinRM
      Get-Process Notepad++
   }
}

TestWorkFlow

输出

TestWorkFlow

SMBIOSBIOSVersion : F.13
Manufacturer     : AMI
Name : F.13
SerialNumber : 5CD015JY8D
Version : HPQOEM - 1072009
PSComputerName :

DeviceID : C:
DriveType : 3
ProviderName :
FreeSpace : 219602677760
Size : 511123124224
VolumeName : OSDisk
PSComputerName :

Status : Running
Name : WinRM
DisplayName : Windows Remote Management (WS-Management)
PSComputerName : localhost

Id : 676
Handles : 738
CPU : 15.875
Name : notepad++
PSComputerName : localhost

更新时间: 2021 年 2 月 19 日

1 千+ 浏览

开启你的 职业生涯

完成课程即可获得认证

立即开始
广告