在网上搜索Powershell的findstr等价物,我找到了this site,它建议使用Cmdlet gci (获取子项)和select-string。但是,gci并不打印文件的内容,而是打印目录内容。在这种情况下,流水线是如何工作的,gci和select-string如何过滤文件的内容(而不是先将其流水线传输到get-content)?
发布于 2012-09-05 17:37:39
Select-String接受管道输入。通过管道连接FileInfo对象时,它们将绑定到InputObject参数。以下两个命令等效:
PS> Get-ChildItem C:\test.txt | Select-String -Pattern logfile
PS> Select-String -InputObject (Get-ChildItem C:\test.txt) -Pattern logfile发布于 2012-09-05 17:24:24
select-string cmdlet从管道接收System.IO.FileInfo对象。因此,它能够确定其参数的哪一部分是文件名,哪些是要查找的字符串。参见Technet上的Select-string。
https://stackoverflow.com/questions/12278151
复制相似问题