PowerShell 4.0 中Where方法 2


别名为WhereWhere-Object命令在PowerShell中过滤元素举足轻重,但是在PowerShell 4.0中又新加入了一个基于集合的名为Where的操作符,集过滤与选择为一体,今天就学习一下吧!

定义

.Where({ expression } [, mode [, numberToReturn]])

方法

  • Default:表现和Where-Objec类似,返回N个符合条件的元素
  • First:返回前N个符合条件的元素
  • Last :返回后N个符合条件的元素
  • Until:返回N个元素直到满足条件
  • SkipUntil:直到找到一个符合条件的元素后,忽略条件返回N个元素 (奇葩指数:三星级
  • Split:返回满足条件的指定N个元素后,再按顺序返回余下的所有元素 (奇葩指数:五星级

实例

Default

PS> @(1..10).Where( {$_ % 2  -eq 0},'default')
2
4
6
8
10

PS> @(1..10).Where( {$_ % 2  -eq 0},'default',2)
2
4

First

PS I:\> @(1..10).Where( {$_ % 2  -eq 0},'first')
2
PS I:\> @(1..10).Where( {$_ % 2  -eq 0},'first',3)
2
4
6

Last

PS> @(1..10).Where( {$_ % 2  -eq 0},'last')
10
PS> @(1..10).Where( {$_ % 2  -eq 0},'last',2)
8
10

Until

PS> @(1..10).Where( {$_ % 5  -eq 0},'until')
1
2
3
4
PS> @(1..10).Where( {$_ % 5  -eq 0},'until',3)
1
2
3

SkipUntil

PS> @(1..10).Where( { $_ % 3 -eq 0},'SkipUntil' )
3
4
5
6
7
8
9
10
PS> @(1..10).Where( { $_ % 3 -eq 0},'SkipUntil',3 )
3
4
5

Split

PS I:\> @(1..10).Where( { $_ % 2 -eq 0},'split' )
2
4
6
8
10
1
3
5
7
9
PS I:\> @(1..10).Where( { $_ % 2 -eq 0},'split' ,3)
2
4
6
1
3
5
7
8
9
10

 

本文链接: https://www.pstips.net/where-method.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

关于 Mooser Lee

我是一个Powershell的爱好者,创建了PowerShell中文博客,热衷于Powershell技术的搜集和分享。本站部分内容来源于互联网,不足之处敬请谅解,并欢迎您批评指正。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

2 条评论 “PowerShell 4.0 中Where方法