您可以執行工作流程以產生根據 PowerShell 指令碼或 PowerShell Cmdlet 進行的動作。您可以使用產生的動作做為自訂工作流程的建置組塊。

透過 PowerShell 指令碼產生動作

您可以執行工作流程,透過您提供的 PowerShell 指令碼產生動作。您可以選擇產生可執行所產生動作的範例工作流程。

您可以自訂您使用預留位置所產生之動作指令碼。工作流程會針對每個預留位置,在所產生動作中建立與 string 類型對應的動作參數。執行動作時,您可以提供實際值做為動作參數以取代預留位置。

必要條件

  • 確認您已用管理員身分登入 Automation Orchestrator 用戶端。
  • 確認您擁有與詳細目錄檢視中 PowerShell 主機的連線。

程序

  1. Automation Orchestrator 用戶端中,導覽至程式庫 > 工作流程,然後在工作流程搜尋方塊中輸入 powershellgenerate 標籤。
  2. 找到透過 PowerShell 指令碼產生動作工作流程,然後按一下執行
  3. 指令碼索引標籤上的指令碼文字方塊中,輸入或貼上要用來產生動作的 PowerShell 指令碼。
    備註: 您可以使用 {#ParamName#} 做為使用者輸入的預留位置。若預留位置屬於 string 類型,您必須使用雙引號將預留位置的值傳遞至動作。
    下面是將產生的動作參數連結至指令碼參數的指令碼範例。
    param($name={#ParamName#})
    echo $name;
  4. 動作索引標籤上的名稱文字方塊中,輸入要產生之動作的名稱,然後選取要在其中產生動作的現有模組。
  5. 工作流程索引標籤上,選取是否產生工作流程。
    選項 說明
    產生範例工作流程,可用於執行產生的動作。您必須選取要產生工作流程的資料夾。
    備註: 所產生工作流程的名稱由預先定義的字串 Invoke Script,和所產生動作的名稱組成。
    不產生範例工作流程。
  6. 按一下提交執行工作流程。

下一步

您可以將產生的動作整合於自訂工作流程中。

PowerShell Cmdlet 產生動作

您可以執行工作流程,為您提供的 PowerShell cmdlet 和參數集產生動作。透過此動作,您便可在 Automation Orchestrator 中使用 PowerShell 功能。您可以選擇產生範例工作流程,用於執行所產生的動作。

您可以將 PowerShell 指令碼引擎與大量資料類型搭配使用。您可以使用的資料類型包括 IntegerBooleanChar 等基本類型、.NET 組件中的任何類型,或使用者定義的類型。依照 PowerShell Cmdlet 定義產生動作時,輸入和輸出 Cmdlet 參數將以 Automation Orchestrator 平台支援的類型表示。PowerShell 外掛程式定義類型對應。一般而言,系統會將基本類型對應至相對應的 Automation Orchestrator 類型,複雜類型則以 PowerShellRemotePSObject 物件表示。

必要條件

  • 確認您已用管理員身分登入 Automation Orchestrator 用戶端。
  • 確認您擁有與詳細目錄檢視中 PowerShell 主機的連線。

程序

  1. Automation Orchestrator 用戶端中,導覽至程式庫 > 工作流程,然後在工作流程搜尋方塊中輸入 powershellgenerate 標籤。
  2. 找到為 PowerShell Cmdlet 產生動作工作流程,然後按一下執行
  3. Cmdlet 索引標籤上,選取使用您產生的動作時要執行的 PowerShell Cmdlet。
  4. 為該 Cmdlet 選取參數集。
    參數集定義值將出現在 參數集定義文字方塊中。
    備註: 您無法透過編輯 參數集定義文字方塊中的字串,來修改參數集定義。您只能檢閱該字串,來瞭解該參數集所包含之參數的相關資訊。
  5. 動作索引標籤上的名稱文字方塊中,輸入要產生之動作的名稱,然後選取要在其中產生動作的現有模組。
  6. 工作流程索引標籤上,選取是否產生工作流程。
    選項 說明
    產生範例工作流程,可用於執行產生的動作。您必須選取要產生工作流程的資料夾。
    備註: 所產生工作流程的名稱由預先定義的字串 Execute Cmdlet,和所產生動作的名稱組成。
    不產生範例工作流程。
  7. 按一下執行

下一步

您可以將產生的動作整合於自訂工作流程中。

在動作之間傳遞叫用結果

PowerShell 外掛程式支援將結果以參數形式,從一個 PowerShell 指令碼叫用作業傳遞到另一個指令碼叫用作業。為了正確傳遞結果,兩個叫用作業必須於同一個工作階段執行。