Power Shell 學習筆記(四)對象管道

來源:互聯網
上載者:User

對象管道是ps的一個很方便的功能,使用對象的一個主要優點是,它使得用管道傳輸命令(即,將一個命令的輸出作為輸入傳遞到另一命令)容易得多。通訊通常需要字串操作,以便將輸出從一種格式轉換為另一種格式,並刪除標題和欄位標題。當然我最喜歡的就是 xxxx|get-member 了,碰到不知道有什麼方法能用的時候,這個管道(get-member)可以給你列出所有屬性和方法,見名知意的猜一下好了。

Windows PowerShell 提供了一個基於對象而不是基於文本的新互動模型。接收對象的 cmdlet 可以直接作用於其屬性和方法,而無需進行轉換或操作。使用者可以通過名稱引用對象的屬性和方法,而不是計算資料在輸出中的位置。

下面來幾個例子

例1:IpConfig 命令擷取IPAddress資訊。

是ipconfig的基本用法。

如果我不想要那麼多資訊,只想要本機IP怎麼辦呢?這時候可以用Findstr 來處理下。處理思想,首先擷取到上面看到的所有資訊,然後對每行資訊進行Findstr 處理,如果包含“Address”,那麼就是我要的內容。具體寫法如下:

ipconfig | findstr "Address"

擷取MAC地址呢?

最後給大家介紹下我最喜歡的一個用法 xxxx|get-member

當你拿到一個對象,然而你又不知道這個對象有哪些方法可用,想猜測一下到底能不能擷取到什麼資訊,能不能實現某些功能的時候,xxxx|get-member最有用了。

例如,get-service可以擷取到某個service的資訊,可是我不知道怎麼啟動這個service怎麼辦。物件導向的思想嗎~拿到對象再說!肯定很多人都會這樣入手。可是當你拿到service對象以後,接下來怎麼辦?service對象都提供了哪些方法?get-member!如下

1. 擷取MSDTC服務資訊,通過format-list 方法輸出所有屬性資訊,可以看到Status是Running的。

2. 我們想要把它關閉。可是不知道怎麼處理,那我我們先來看一下他都提供了我們什麼方法。

可以看到,get-member把所有的成員都給大家列出來了。OK,我們發現他有一個Method,叫做Stop。我想大多數人都能猜到幹什麼用的吧這個方法。

所以我來實驗一下。

我們首先拿到msdtc的service對象,然後調用stop方法(方法,當然要加括弧)。

然後輸出了新的狀態資訊,你會發先status變成了stopped。我們成功的關閉了服務。很有用的方法啊。

對象管道當然還有好多用法,也有好多常用方法,不過等到用到再說吧。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.