共用方式為


about_Sequence

適用於: Windows PowerShell 3.0

主題

about_Sequence

簡短描述

描述 Sequence 關鍵字,其能依序執行所選取的活動。

詳細描述

Sequence 關鍵字會依序執行所選取的工作流程活動,意即其會依照出現的順序執行而非同時執行。Sequence 關鍵字僅在 Windows PowerShell® 工作流程中有效。

Sequence 關鍵字通常用於 Parallel 指令碼區塊,以依序執行所選取的命令。

由於工作流程活動會按照預設依序執行,因此 Sequence 關鍵字只在 Parallel 指令碼區塊中有效。不過,即使沒有任何作用,其在 Parallel 指令碼區塊外依然有效。

Sequence 指令碼區塊透過允許您依序執行相依的命令,讓您能夠以平行方式執行多個命令。

語法

   workflow <Verb-Noun>
   {
       Sequence
       {
         [<Activity>]
         [<Activity>]
           ...
       }
   }

   workflow <Verb-Noun>
   {
       Parallel
       {
         [<Activity>]
         Sequence
           {
             [<Activity>]
             [<Activity>]
               ...
           }
       }
   }

詳細描述

Parallel 指令碼區塊中的命令可以同時執行。其執行順序並未決定。這項功能可改善指令碼工作流程的效能。

即使活動會出現在 Parallel 指令碼區塊中,您也可以使用 Sequence 指令碼區塊來依序執行所選的活動。

Sequence 指令碼區塊中的活動會依照所列的順序一次只執行一個。在上一個活動完成之後,Sequence 指令碼區塊中的下一個活動才會啟動。

不過,當 Sequence 指令碼區塊出現在平行指令碼區塊中時,並不會決定 Sequence 指令碼區塊執行的順序。其可能會在 Parallel 指令碼區塊中其他活動的之前、之後或同時執行。

例如,下列的工作流程包含 Parallel 指令碼區塊,其能執行取得電腦處理序和服務的活動。Parallel 指令碼區塊包含 Sequence 指令碼區塊,其能從檔案取得資訊,並使用該資訊做為指令碼的輸入。

Get-Process、Get-Service 以及 Hotfix 相關的命令彼此獨立,且能夠同時或以任何順序執行,但是必須先執行取得 Hotfix 資訊的命令,才能執行使用該資訊的命令。

        workflow Test-Workflow
        {
            Parallel
            {
                 Get-Process
                 Get-Service
                               
                 Sequence
                 {
                     $Hotfix = Get-Content D:\HotFixes\Required.txt
                     Foreach ($h in $Hotfix} {D:\Scripts\Verify-Hotfix -Hotfix $h} 
                 }
            }
        }

另請參閱

<撰寫指令碼工作流程>(https://go.microsoft.com/fwlink/?LinkID=262872)

about_ForEach

about_ForEach-Parallel

about_Language_Keywords

about_Parallel

about_Workflows