PowerShell工作流基于基于.Net的Windows Workflow Foundation(WWF)构建,并且具有用于执行代码的单独的工作流引擎,因为它可以将代码转换为WWF框架的XAML。
PowerShell工作流是一系列步骤,主要用于
在多台计算机上并行运行活动。
长时间运行的脚本。
结构化步骤(哪些步骤将并行执行,并按顺序执行)
经常使用的任务。
通过定义检查点,从由于系统故障或任何其他中断而终止脚本的位置恢复该脚本。
PowerShell工作流是在PowerShell 3.0中引入的,在Core版本(6.0及更高版本)中不再适用于Windows,仅在PowerShell框架版本中受支持。PowerShell工作流被认为是Microsoft Azure Runbook的基础,并且是设计Runbook步骤的必要条件。
此方法的缺点是,并非工作流中支持所有cmdlet,您可以检查MS链接以查找PowerShell工作流和脚本之间的区别。
https://docs.microsoft.com/zh-cn/previous-versions/windows/it-pro/windows-server-2012-R2-and-2012/jj574140(v=ws.11)
PowerShell工作流的定义与PowerShell函数相同,但是使用“ Workflow ”关键字,并且只能使用其名称来调用,就像PowerShell函数一样。
Workflow TestWF{ Write-Output "First PS Workflow" }
PS C:\WINDOWS\system32> TestWF First PS Workflow
一旦执行TestWF工作流,它将为其创建XAML代码,您可以使用以下命令对其进行检查。
Get-Command TestWF | fl *