如果你能够提前知道你想从管道中获取元素的个数,可以使用Select-Object来终止流处理命令的的管道,这会节省很多时间。
下面的例子会从Windows文件夹下搜寻 explorer.exe示例,因为Select-Object语句可以在管道找到结果的那一瞬终止管道。否则,Get-ChildItem会递归的遍历所有子目录然后匹配出你想要的结果。
#requires -Version 3 Get-ChildItem -Path c:\Windows -Recurse -Filter explorer.exe -ErrorAction SilentlyContinue | Select-Object -First 1
注意Select-Object可以终止流处理命令管道的这个功能,是在PowerShell 3.0以后才引入的。在早期的windows powershell版本中,select -first 1 会得到所有结果,然后再取第一个,很傻的模式吧!
本文链接: https://www.pstips.net/aborting-the-pipeline.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!