PowerShell中select-string的使用误区


dos的findstr,powershell的select-string,linux的grep,是类似的东西。 但有时候我们搜东西,喜欢这样用:

type  file.txt | findstr "你要搜索的内容"

type  file.txt | select-string "你要搜索的内容"

这是不对的,正确的用法是:

findstr "你要搜索的内容"  file.txt

Select-String -path file.txt -Pattern  "你要搜索的内容"

第一种慢,而第二种快。但是在cmd下,这种差别并不明显。而在powershell中,差别就很大了!!!

type  file.txt | select-string "你要搜索的内容"

—-这种不建议使用!我用这种方法在200MB的txt中搜字符串,狂占10多GB内存! 原因是: 在powershell中,type、cat、都是Get-Content命令的别名,Get-Content命令只适合于小文件。大家不可不知~ 本文由焖哥 (qq1328486072)推荐

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

关于 Mooser Lee

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

发表评论

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