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

powershellmicrosoft technologiessoftware & coding

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

相关文章