天天看點

PowerShell篩選方式和格式化輸出

篩選:

從衆多的輸出結果中挑選出符合條件的項。通常情況下,輸出結果以清單的形式顯示

例如:用get-command指令檢視前十行的指令

<a href="http://s2.51cto.com/wyfs02/M01/89/81/wKiom1gVvW3Dx84XAACyV8_fMEw871.jpg" target="_blank"></a>

預設情況下,get-command搜尋到的指令是以清單的形式展示的,如上圖所示,輸出結果有三列,這三個字段分别是:CommandType、Name、Definition。有些字段可以作為選項,來進行指令篩選

例如:用Command-Type作為選項,查詢指令類型為Alias的所有指令

<a href="http://s5.51cto.com/wyfs02/M02/89/7F/wKioL1gVv5jijS1CAAAiSQEUO8M918.png" target="_blank"></a>

例如:将Name作為選項,查詢Name中包含Add的所有指令

<a href="http://s2.51cto.com/wyfs02/M00/89/81/wKiom1gVwMjwm7GmAAAZr6bnVDQ530.png" target="_blank"></a>

管道:

管道符号:| 

 指令1 | 指令2 | 指令3

用法:将管道前的輸出結果交給管道後的指令來處理,通常用于篩選或者擷取屬性

通用篩選語句:

Where-Object:别名為?,是以也可以簡寫為“?”

<a href="http://s1.51cto.com/wyfs02/M01/89/7F/wKioL1gVxIOxXy9kAAANe8aDOzI452.png" target="_blank"></a>

文法:

1

<code>管道前指令| </code><code>Where-Object</code> <code>{</code><code>$_</code><code>.字段名 </code><code>-eq</code><code>/like </code><code>"關鍵字"</code><code>}</code>

字段名:指令查詢出來的列名

-eq:通常用于精确查詢,用于數字列的情況,也可以用于文字列,但是要求字元完全比對

-like:通常用于模糊查詢,用于文字列的情況,也可以配合通配符“*”使用

例如:搜尋Name為copy的指令

<a href="http://s2.51cto.com/wyfs02/M02/89/7F/wKioL1gVxg-wImfGAAAJAyff6IE797.png" target="_blank"></a>

也可以這樣寫:

<a href="http://s5.51cto.com/wyfs02/M00/89/82/wKiom1gVxlih9_8-AAAIIE0TTeM351.png" target="_blank"></a>

例如:篩選程序名為“svchost”的程序

<a href="http://s4.51cto.com/wyfs02/M01/89/7F/wKioL1gVyHuA7WEWAAApN8E1T1E809.png" target="_blank"></a>

用like模糊查詢

<a href="http://s4.51cto.com/wyfs02/M00/89/7F/wKioL1gVxwWSPT1xAAANzbPVrL0966.png" target="_blank"></a>

其他篩選方式:

Select-Object -First 10:篩選前十行

Select-Object -First 10:篩選後十行

<a href="http://s5.51cto.com/wyfs02/M02/89/7F/wKioL1gVy8rjA44vAAAZ-Zc640M225.png" target="_blank"></a>

輸出格式:

輸出格式有兩種:

按詳細清單方式輸出:Format-List,這種格式輸出的資訊比Format-Table更加詳細

按表格的方式輸出:Format-Table

例如:搜尋name為“spooler”的服務資訊,分别以Format-List和Format-Table的格式輸出

<a href="http://s2.51cto.com/wyfs02/M00/89/82/wKiom1gVzLOiSysiAAAgCMFEz-U632.png" target="_blank"></a>

總結:

篩選思路:

先擷取所有的輸出結果

如果字段名能作為選項的可以優先使用選項

字段名無法作為選項的使用篩選語句

需要詳細資訊的可以使用Format-List格式

本文轉自 曾哥最愛 51CTO部落格,原文連結:http://blog.51cto.com/zengestudy/1867408,如需轉載請自行聯系原作者

繼續閱讀