Powershell 4.0(WIN8.1最终版本中发现) Foreach和Where 直接内置在了Arrays的处理中.这是一个老技新样的写法,所以没有明显优势对比传统的管道用法(也许新方法速度快些)
这行命令将从显示的数字中得到不能被整除的数字。
@(1..10).Where({$_ % 2})
这条命令将得到正在运行的服务
@(Get-Service).Where({$_.Status -eq 'Running'})
还有更多的写法,这条将从数组将得到大于2的前4个数字
@(1..10).Where({$_ -gt 2}, 'skipuntil', 4)
最后,同样的方法,但是将结果转换成了TimeSpan对象。
@(1..10).Where({$_ -gt 2}, 'skipuntil', 5).Foreach([Timespan])
原文地址:Hidden Array Extensions in PowerShell 4.0
本文链接: https://www.pstips.net/hidden-array-extensions.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
哇,之前竟然都没有注意过。感谢@codecook
看来PowerShell已经尝试把linq语法引入了。