个性化阅读
专注于IT技术分析

PowerShell Where-Object使用例子

PowerShell中的Where-Object根据对象的属性值从集合中选择对象。

使用PowerShell 3.0的启动版, 可以通过以下两种不同的方式构造Where-Object cmdlet:

  1. 比较声明:随着PowerShell 3.0的启动, 我们可以将比较运算符添加为Where-Object命令中的参数。
  2. 脚本块:我们可以使用脚本块来指定属性的名称和值以及比较运算符。 Where-Object cmdlet返回脚本块语句为true的所有对象。

句法

Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
[-InputObject <psobject>] 
[-EQ]  
[<CommonParameters>]
Where-Object 
[-FilterScript] <scriptblock> 
[-InputObject <psobject>] 
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-Match 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>]
-CEQ 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-NE 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CNE 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-GT 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CGT 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-LT 
[-InputObject <psobject>]  
[<CommonParameters>]

Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CLT 
[-InputObject <psobject>]  
[<CommonParameters>]

Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-GE 
[-InputObject <psobject>]  
[<CommonParameters>]
</textarea></div>
<br>
<div class="codeblock"><textarea name="code" class="xml">
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CGE 
[-InputObject <psobject>]  
[<CommonParameters>]
</textarea></div>
<br>
<div class="codeblock"><textarea name="code" class="xml">
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-LE 
[-InputObject <psobject>]  
[<CommonParameters>]
</textarea></div>
<br>
<div class="codeblock"><textarea name="code" class="xml">
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CLE 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-Like 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CLike 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-NotLike 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CNotLike 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CMatch 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-NotMatch 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CNotMatch 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-Contains 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CContains 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-NotContains 
[-InputObject <psobject>] 
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CNotContains 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-In 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-CIn 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-NotIn 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object
[-Property] <string> 
[[-Value] <Object>]
-CNotIn 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-Is 
[-InputObject <psobject>]  
[<CommonParameters>]
Where-Object 
[-Property] <string> 
[[-Value] <Object>] 
-IsNot 
[-InputObject <psobject>]  
[<CommonParameters>]

参数

以下是此cmdlet中使用的参数:

-属性

此参数用于指定对象属性的名称。它是可选的, 并在Windows PowerShell的3.0版本中引入。

-值

此参数用于指定属性的值。与比较参数一起使用时, 它接受通配符(*)。它也是在PowerShell 3.0版中引入的。

-InputObject

此参数用于指定要过滤的对象。我们还可以将对象通过管道传递给Where-Object cmdlet。

-情商

如果属性的值与指定的值相同, 则Where-Object cmdlet使用此参数获取对象。

-FilterScript

此参数用于指定用于过滤对象的脚本块。你必须将脚本块放在大括号{}中。

-比赛

如果属性的值与给定的正则表达式匹配, 则Where-Object cmdlet使用此参数获取对象。

-CEQ

如果属性的值与指定的值相同, 则Where-Object cmdlet使用此参数获取对象。

-NE

如果属性的值与指定的值不同, 则Where-Object cmdlet使用此参数获取对象。

-CNE

如果属性的值与指定的值不同, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-GT

如果属性的值大于给定值, 则Where-Object cmdlet使用此参数获取对象。

-CGT

如果属性的值大于给定值, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-LT

如果属性的值小于给定值, 则Where-Object cmdlet使用此参数获取对象。

-CLT

如果属性的值小于给定值, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-GE

如果属性的值大于或等于给定值, 则Where-Object cmdlet使用此参数获取对象。

-CGE

如果属性的值大于或等于给定值, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-LE

如果属性的值小于或等于给定值, 则Where-Object cmdlet使用此参数获取对象。

-CLE

如果属性的值小于或等于给定值, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-喜欢

如果属性的值与包含通配符的值匹配, 则Where-Object cmdlet使用此参数获取对象。

-点击

如果属性的值与包含通配符的值匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-不喜欢

如果属性的值与包含通配符的值不匹配, 则Where-Object cmdlet使用此参数获取对象。

-CNotLike

如果属性的值与包含通配符的值不匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-CMatch

如果属性的值与给定的正则表达式匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写

-不匹配

如果属性的值与给定的正则表达式不匹配, 则Where-Object cmdlet使用此参数获取对象。如果输入为标量, 则匹配的值将保存或存储在$ Matches自动变量中。

-CNotMatch

如果属性的值与给定的正则表达式不匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-包含

如果对象的属性值与给定值匹配, 则Where-Object cmdlet使用此参数从集合中获取对象。

-C包含

如果对象的属性值中的项与给定值匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-不包含

如果对象的属性值中的任何项均与给定值不匹配, 则Where-Object cmdlet使用此参数获取对象。

-CNotContains

如果对象的属性值中的项与给定值不匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-在

如果属性的值与任何给定值匹配, 则Where-Object cmdlet使用此参数获取对象。

在-c

如果属性的值与任何给定值匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-NotIn

如果属性的值与任何给定值都不匹配, 则Where-Object cmdlet使用此参数获取对象。

-CNotIn

如果属性的值与任何给定值都不匹配, 则Where-Object cmdlet使用此参数获取对象。此操作区分大小写。

-是

如果属性的值是给定.NET Framework类型的实例, 则Where-Object cmdlet使用此参数获取对象。你必须将类型的名称括在方括号中。

-不是

如果属性的值不是给定.NET Framework类型的实例, 则Where-Object cmdlet使用此参数获取对象。

例子

示例1:获取停止的服务

PowerShell Where-Object使用例子
PowerShell Where-Object使用例子

此示例中的两个命令都获取当前停止的所有服务的列表。第一个命令使用脚本块的格式, 第二个命令使用比较语句的格式。

示例2:根据流程名称获取流程

PowerShell Where-Object使用例子

本示例中的命令获取以A字母开头的服务的名称。 -Match参数允许你使用正则表达式。


赞(0)
未经允许不得转载:srcmini » PowerShell Where-Object使用例子

评论 抢沙发

评论前必须登录!