共用方式為


Windows PowerShell:什麼是 Windows PowerShell 工作流程?

使用 Windows PowerShell 工作流程可能是複雜的過程,不過它所提供的功能性終究是值得的。

注意:在 2013 年,期間每月 Don Jones 將在 Windows PowerShell 工作流上的教程系列 12 部分提出分期付款。 我們鼓勵您閱讀通過一系列的順序,從 2013 年 1 月列開始,然後進行按月。

Don Jones

Windows PowerShell 工作流是 Windows 管理框架 3.0 版中的新功能。 在廣泛的意義上,工作流是專門的種 Windows PowerShell 腳本。 它概述了一組任務,其中一些需要發生在一個特定的序列,而其他人可以並行運行。

Windows PowerShell 工作流來預裝 Windows 伺服器 2012年和 Windows 8。 它也是可用於 Windows 7、 Windows Server 2008 和 Windows Server 2008 R2。 您將需要這些作業系統運行工作流之一。 但是,工作流可以目標 — — 這意味著,執行打擊任務 — — 任何版本的 Windows,根據你想要完成的具體任務。

它是使用更多或較少的標準 Windows PowerShell 語法編寫的。 然而,有幾個工作流和傳統 Windows PowerShell 腳本之間的不相容問題。 Windows PowerShell 工作流使重使用的 Windows PowerShell 遠端處理功能。 (抓住我免費"PowerShell 遠端處理機密"指導如果您需要遠端處理底漆或配置建議.)

工作流的工作方式

發動機罩下找 (我們會做的更深入以後整個系列),你會發現 Windows PowerShell 工作流實際上並不由 Windows PowerShell 執行。 相反,Windows PowerShell 將您的腳本轉換為 XAML,並將其傳到 Windows 工作流基金會 (WWF),這是 Microsoft.NET 框架的一部分。 世界自然基金會接受 XAML 和實際上執行執行。

世界自然基金會執行工作流中,並沒有 Windows PowerShell,事實介紹了一些有趣的功能和較多的複雜性。 世界自然基金會到檢查點而設計的例如工作流的進度。 這樣,如果運行工作流的機器被中斷以某種方式,如關閉的時候,工作流可以拿起它關閉機器啟動時再次離開的地方。

您也可以手動暫停和恢復的工作流。 例如,您可能有一個工作流完成一組特定的任務,需要手動干預時點。 然後,您可能希望它暫停操作,並自動發送電子郵件的狀態更新。 完成手動任務之後, 您可以恢復工作流,讓它繼續執行。

工作流如果你願意還可以執行並行,事情。 例如,如果您有一套可以按任何順序,沒有相互依存關係,與運行的任務,然後你可以讓他們所有同時運行更多或更少。 這縮短了完成該工作流,可提高效率所需的總時間的量。 世界自然基金會還會跟蹤的每個工作流步驟。 這意味著您可以生成一個詳細的稽核記錄上什麼任務已完成,這是很大的説明進行故障排除。

工作流不能做一個 Windows PowerShell 腳本能做的一切。 作為整個系列,您將學習,任何事情你不能翻譯成世界自然基金會的理解的東西超出界限。 有的不會轉移的 Windows PowerShell 肯定幾個方面。 所以 Windows PowerShell 的子集和超集合既不是一個工作流。 它是跨組,意味著工作流到 Windows PowerShell,添加一些功能,但也可以把一些帶走。 這是更複雜的工作流的方面之一。

不是唯一的答案

工作流不是每個任務的最終答案。 工作流激情源自產品團隊在微軟和無數獨立的發燒友,能給你應該作為工作流的一切的印象。 抗拒的衝動,因為工作流有一個明顯的高等教育學習曲線。 他們也更難進行故障排除和調試,並不總是必要。

例如,如果您只是需要有一項針對一組平行電腦運行的任務,平原舊遠端處理能夠做到這一點你。 您還可以使用 Windows PowerShell 版本 2 樣式後臺作業 (其中仍然存在在版本 3 中)。

如果您只是需要運行的任務序列,可重新開機目的電腦,並等待恢復繼續腳本之前,您可以使用新版本 3 重啟電腦命令這樣做 (哪些功能-等待交換器)。 所以雖然的確強大的並具有一些獨特的能力的工作流,您可以看到,他們不一定最簡單的方法來實現每個可能的任務。

工作流的解剖結構

工作流中的,一個函數或 Cmdlet,像是 Windows PowerShell 命令的類型。 一旦您已經創建了一個,您基本上只是運行它就像任何其他命令一樣。 您還可以安排時間,或將它推送到遠端的電腦來運行存在。 在執行時,Windows PowerShell 將它轉換成世界自然基金會,並詢問世界自然基金會以實際運行工作流。

像其他類型的命令,您可以給工作流參數,允許您自訂它們在運行時的行為。 有各種常見參數可用來自動啟用特定的行為。

您定義一套工作流中的活動。 您可以設置這些活動運行特定的順序或相互平行。 您可以混合和匹配序列和並行化的塊,一樣需要。 訣竅是每一項活動必須是世界自然基金會的理解的東西。 這確實是複雜性的開始位置。

Windows PowerShell 團隊提供世界自然基金會的最主要的 Windows PowerShell 核心 Cmdlet 的"版本"。 這意味著您可以使用工作流內的這些 Cmdlet 權利。 當翻譯為世界自然基金會,這些 Cmdlet 替換與世界自然基金會對應的所以他們會按預期方式運行。

在理想的世界,每個 Windows PowerShell Cmdlet 會來與世界自然基金會相當。 這會使工作流很像我們已經寫了多年的熟悉 Windows PowerShell 腳本。 然而,我們不要生活在一個完美的世界。 在現實中,大多數 Cmdlet 不跟 WWF 等效項。 這是使用的 Cmdlet 的 (除了核心 Windows PowerShell Cmdlet) 來與 Exchange 伺服器、 SharePoint 和 Windows 伺服器 2012年尤其如此。

世界自然基金會不能以本機方式運行這些 Cmdlet。 您必須換他們行內東西世界自然基金會的理解:InlineScript。 這項特別活動基本上是告訴世界自然基金會,只需運行 Windows PowerShell。 它喂到外殼程式的 InlineScript 活動的內容。

每個 InlineScript 是一個獨立、 獨立和斷開連接的實體。 InlineScripts 不能與另一個共用資訊,除了由持續資料地方 (如資料庫) 他們可以的所有存取權限。

這些使寫作工作流複雜得多。 然而,他們打算將您主要的執行時間的單位,因為大多數 Windows PowerShell Cmdlet 還沒有世界自然基金會版本。

這裡是未來是什麼

工作流是絕對令人興奮的。 當用於右側的任務,他們提供令人難以置信的功能。 他們是確實很複雜。 你得要投入一些時間學習如何使用它們。 2013 年目標是目前資訊每月一大塊:

  • **2013 年 2 月:**包括工作流環境,包括系統必備元件和遠端處理配置。
  • **2013 年 3 月:**所以,我們有話要談一談和依靠前進基本工作流示例中,給你。
  • **2013 年 4 月:**比較和對比的腳本和工作流,什麼會的綜合清單,— — 不會 — — 在每個工作。
  • **2013 年 5 月:**挖到工作流活動,包括所有重要的 InlineScript 活動。
  • **2013 年 6 月:**看看通用參數和運行時變數的工作流,以及如何在您自己的工作流中使用它們。
  • **2013 年 7 月:**瞭解如何將您自己的參數添加到工作流。
  • **2013 年 8 月:**構造都測序和並行工作流內, 活動和來看如何混合和匹配它們。
  • **2013 年 9 月:**看看如何向工作流進度檢查點,以及如何以程式設計方式和手動掛起和恢復工作流。
  • **2013 年 10 月:**採取一切您學到目前為止,並創建一個新的、 全面的工作流示例。
  • **2013 年 11 月:**通過顯示一些特定的任務,如並行任務的工作流的替代放入談話的一些觀點。
  • **2013 年 12 月:**看看其他的方法可以使用和交互的工作流功能集。

我期待著到此告一段落的 Windows PowerShell 工作流。 我希望你能加入我每一步。

Don Jones

Don Jones 是 Windows PowerShell MVP 獎收件者和 TechNet Magazine 》 的特約編輯。 他合著了有關 Windows PowerShell 版本 3,其中包括在 Windows PowerShell 和 Windows PowerShell 遠端處理中創建 HTML 報表上的免費的四本書。 找到它們都在 PowerShellBooks.com,你可以問鐘斯在討論論壇上的問題或 PowerShell.org

相關的內容