在應用程式中使用Runspace 1

來源:互聯網
上載者:User

標籤:windows   管理工具   應用程式   開發   空調   powershell   

 

或許你也已經察覺,使用Windows PowerShell 來完成你的管理工作,她方便,高效,優雅而靈活。

當然作為一個營運人員來說,Windows PowerShell 就是堪比人類曆史上最偉大的發明---空調 之後最偉大的發明 沒有之一,同樣作為一個營運,開發界限模糊的IT時代,PowerShell 作為一個 跨平台的管理工具,尤其在Windows 平台 光芒無限,在面臨組織內自訂應用程式時候通過有效訪問手段,開發人員依然可以依靠這一強大的平台進行快速的構建應用程式,當然作為管理,營運人員適當的學習開發基礎知識更有利於工作的開展,同樣我們今天討論的內容雖然是面向開發人員,但管理員依然適用因為他們會再一次提升你的IT結構的自動化水平,進一步的提升你的工作效率。

下面我們將不再廢話 直接進入正題

我們不妨先從營運人員的日常工作開始看看 我們應該如何?在應用程式中使用PowerShell

首先營運人員要開打PowerShell 無非使用console 或者ISE 或者是PowerShell Studio 要麼

使用PSWA (PowerShell Web Access)

在這裡 我們就已經發現了第一個問題 我們每次開啟的Console 或者ISE 都稱為一個會話 由於我們應用程式中並沒有這個“會話”所以 要在用用程式中使用 PowerShell 我們就需要這麼一個“會話”

也許你覺得這“會話”有點困難,要像使用Bat 那樣的複雜,更多的不可控,因為我們總是希望代碼儘可能的精簡,儘可能強壯,我有個好訊息,使用並不複雜, 也非常可控就像你使用其他技術一樣的容易。

So 我們要準備一下如何去使用 “會話”當然 我們會用C#作為樣本其他的語言在使用方式一樣 請根據自己使用的文法進行相應修改。

如果你只想簡單使用這個“會話”那麼只要建立控制台應用程式就可以開始愉快的使用了

建立好項目後請添加 對如下的Namespace 的引用

System.Management.Automation

System.Management.Automation.Runspaces

System.Collections.ObjectModel

當然這些 都已在GAC中你不需要額外的去安裝什麼.

如果想快速使用powershell 引擎中的命令那麼 使用 RunspaceInvoke 是最簡單的方式它已經

為我們封裝好了Runspcae Pipline 為我們省去很多手動建立的事情,當然如果你只是簡單的使用那麼

已經足夠,這樣的代價就是犧牲了引擎中的其他API 和更多的管道以及Runspace的功能

就像一樣 我們就可以簡單的在一個控制台程式中使用PowerShell了

650) this.width=650;" height="106" title="clip_image001" style="border:0px;" alt="clip_image001" src="http://s3.51cto.com/wyfs02/M00/74/93/wKioL1YiVprzCjpiAABcTd2Z2lc071.jpg" border="0" />

也許你會問我管道是什麼 至少現在來說我們還暫時不需要知道這個東西。我們會在後面去介紹這個

RunspaceInvoke 類的建構函式有三個重載 你可以從一個已有的Runspace或者一個現有runspaceConfiguration 執行個體即Runspace設定檔(我們會在後面詳細介紹這個) 或者是一個控制台設定檔來建立對用的RunspaceInvoke 執行個體 一旦我們建立了RunspaceInvoke 我們就可以使用Invoke()方法在控制命令運行 。

650) this.width=650;" height="123" title="clip_image002" style="border:0px;" alt="clip_image002" src="http://s3.51cto.com/wyfs02/M02/74/93/wKioL1YiVprjJ5JkAACCE2jCOfc510.jpg" border="0" />

此後我們像一樣擷取其運行返回,

650) this.width=650;" height="210" title="clip_image004" style="border:0px;" alt="clip_image004" src="http://s3.51cto.com/wyfs02/M02/74/96/wKiom1YiVnazzF5jAACwtEs7CoI739.jpg" border="0" />

如果你只是想簡單的讓結果輸出在螢幕上那麼將是非常簡單的事情

650) this.width=650;" height="79" title="clip_image005" style="border:0px;" alt="clip_image005" src="http://s3.51cto.com/wyfs02/M01/74/96/wKiom1YiVnaxAuonAABENbKR6uM537.jpg" border="0" />

後面的文章我們講繼續深入討論這些

本文出自 “自動化世界” 部落格,轉載請與作者聯絡!

在應用程式中使用Runspace 1

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.