天天看点

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,如需转载请自行联系原作者

继续阅读