Select-Object 有一个能接收数字的“-Firest”参数,它将返回第X元素,例如这样:
这里返回了前四条结果:
PS C:\> dir| Select-Object -First 4 目录: C:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 2013/10/24 20:59 ADSI Scriptomatic d---- 2013/11/30 20:41 HEW STONE d---- 2013/10/6 11:42 Intel d---- 2013/11/14 7:11 New Oriental Soft
从Powershell3.0开始,“First”参数不仅能指定的结果条数。 同时也能协调管道命令完成工作,并有效的使其停止。
所以如果你用一个命令去获得你一定范围内的结果,你可以这样做,你应该使用select-object -frist x 这能加速你的代码,某些情况下你会获得惊喜。
假设我们寻找名为”test.txt”的文件在你的$home目录下同时该文件可能只有一个,但是你不知道它在哪里,这时你使用Get-ChildItem配合-Recurse参数去递归查询全部的目录:
Get-ChildItem -Path $home -Filter test.txt -Recurse -ErrorAction SilentlyContinue
当你运行时,Get-ChildItem迟早会发现你要的文件同时它还会继续查找子目录,也许还要一会儿才能结束,因为命令不知道是否还有其它符合条件的。
你现在应该知道要怎么做了,所以当你提前知道需要结果的范围,请这样做:
Get-ChildItem -Path $home -Filter test.txt -Recurse -ErrorAction SilentlyContinue | Select-Object -First 1
这时,只要发现文件后Get-ChildItem命令将会立即停止。
原文地址:Save Time With Select-Object -First!
本文链接: https://www.pstips.net/save-time-with-select-object-first.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!