Compartilhar via


Criar um fluxo de trabalho pelo uso de um script do Windows PowerShell

Você pode criar um fluxo de trabalho escrevendo um script Windows PowerShell. Para criar um fluxo de trabalho, use a palavra-chave de fluxo de trabalho seguida de um nome para o fluxo de trabalho antes do corpo do script. Por exemplo:


workflow Invoke-HelloWorld {"Hello World from workflow"}

Você encontra o fluxo de trabalho da mesma forma que faria com qualquer outro comando Windows PowerShell.

Implementando paralelo e sequência

O Windows Workflow Foundation dá suporte à execução de atividades em paralelo. Para implementar essa funcionalidade em um script Windows PowerShell, use a parallel palavra-chave na frente de um bloco de script. Você também pode usar a foreach -parallel construção para iterar por meio de uma coleção de objetos em paralelo. Para executar um grupo de atividades em ordem sequencial dentro de um bloco paralelo, coloque esse grupo de atividades em um bloco de script e preceda o bloco com a palavra-chave de sequência.

Ingressando computadores em um domínio

O script a seguir cria um fluxo de trabalho que verifica o status de domínio de um grupo de computadores especificados pelo usuário, une-os a um domínio se eles ainda não estiverem ingressados e, em seguida, verifica o status novamente. Esta é uma versão de script do fluxo de trabalho XAML explicada na criação de um fluxo de trabalho com atividades de Windows PowerShell.

workflow Join-Domain
{
    param([string[]] $ComputerName, [PSCredential] $DomainCred, [PsCredential] $MachineCred)

    foreach -parallel($Computer in $ComputerName)
    {
        sequence {
        Get-WmiObject -PSComputerName $Computer -PSCredential $MachineCred
        Add-Computer -PSComputerName $Computer -PSCredential $DomainCred
        Restart-Computer -ComputerName $Computer -Credential $MachineCred -For PowerShell -Force -Wait -PSComputerName ""
        Get-WmiObject -PSComputerName $Computer -PSCredential $MachineCred
        }
    }
}