久久96国产精品久久久-久久发布国产伦子伦精品-久久精品国产精品青草-久久天天躁夜夜躁狠狠85麻豆

技術員聯盟提供win764位系統下載,win10,win7,xp,裝機純凈版,64位旗艦版,綠色軟件,免費軟件下載基地!

當前位置:主頁 > 教程 > 服務器類 >

PowerShell管道入門教程

來源:技術員聯盟┆發布時間:2017-07-22 12:07┆點擊:

  1. 管道(pipeline)是什么

  在Shell中一個重要的基本概念就是管道(pipeline),即在一組命令中,輸出的命令結果成為下一個命令的輸入參數。管道的概念與真實生活中的生產線比較相似:在不同的生產環節進行連續的再加工,如下圖例子:

PowerShell管道入門教程 三聯

  “Get-ChildItem”意思是獲取當前路徑的所有項目,“|Where-Object {$_.Length -gt 200}”意思是查看上一步結果,取所有長度大于200的項目,“|Sort-Object -Descending Name”意思是查看上一步結果,按照Name進行倒敘排列。

  在PowerShell中,使用管道符號(|)來劃分管道中的每個命令,上述例子說明了管道的強大功能,同時PowerShell在管道中傳遞的是高保真對象,不僅僅是文本描述。

  下面主要給大家介紹一下常用的管道處理命令。

  2. Where-Object:過濾列表項或命令輸出結果

  可以使用Where-Object(別名是where和?)從列表或者命令輸出結果中過濾選擇你需要的項目。

  對于輸入的每一項,Where-Object都會根據{}中定義的腳本塊對輸入進行計算,如果返回True,則輸出,否則不輸出。如下例子:

PowerShell管道入門教程

  {}表示一個腳本塊,可以輸入一系列PowerShell命令,其中$_代表當前輸入對象,在這個例子中,$_就代表一個文件項目。-gt是比較操作符,意思是大于,關于比較操作符的介紹如下:

  PowerShell中比較操作符是用于對表達式進行比較的。默認情況比較操作符不區分大小寫,如果想要區分,需要使用-C前綴,不需要區分的,使用-I前綴。

PowerShell管道入門教程

  所有可用的比較操作符如下表格:

操作符

 

意義

 

返回True的例子

 

-eq

 

相等符

 

10 -eq 10

 

-ne

 

不相等符

 

10 -ne 9

 

-ge

 

大于等于操作符

 

10 -ge 9

 

-gt

 

大于操作符

 

10 -gt 9

 

-lt

 

小于操作符

 

10 -lt 11

 

-le

 

小于等于操作符

 

10 -le 11

 

-like

 

相似操作符

 

"Bob" -like "*ob"

 

-notlike

 

非相似操作符

 

"Bob" -notlike "1*ob"

 

-match

 

匹配操作符

 

"Bob" -match "B*ob"

 

-notmatch

 

非匹配操作符

 

"Bob" -notmatch "123*"

 

-contains

 

包含操作符

 

"Bob","Bob1" -contains "Bob"

 

-notcontains

 

非包含操作符

 

"Bob","Bob1" -notcontains "ob"

 

-is

 

類型操作符

 

"Bob" -is "System.String"

 

-isnot

 

非類型操作符

 

"Bob" -isnot "System.Int32"

 

  3. ForEach-Object:處理列表或者命令輸出的每一個項目

  使用ForEach-Object命令(別名是foreach和%)來處理列表中的每一項。

  使用例子如下:

PowerShell管道入門教程

  例子中1..10的意思是簡單聲明了一個1~10的一組數字。其中處理列表中每一項還可以用for、foreach、do和while等,以后會更詳細的介紹。

  4. Select-Object:選擇列表項或輸出結果只輸出要的結果