忽略 FINDSTR 搜索中的第一行
Ignore first line in FINDSTR search
我在 Windows 7 PowerShell 中使用以下命令在面向对象的 Modelica 库中搜索特定字符串:
findstr /s /m /i "Searchstring.*" *.*
click for findstr documentation
该库由几个文件夹组成,其中包含带有实际代码的文本文件。为了减少(不需要的)结果的数量,我必须忽略每个文本文件的第一行。
不幸的是,我不知道如何使用 findstr
命令执行此操作。
您可以使用 Select-String
而不是 findstr
要获得除第一行之外的所有匹配项,请尝试如下操作:
Select-String -Path C:\dir\*.* -pattern "Searchstring*" | where {$_.LineNumber -gt 1}
如果您必须搜索子目录,您可以将其与 Get-Childitem
:
配对
Get-Childitem C:\dir\*.* -recurse | Select-String -pattern "Searchstring*" | where {$_.LineNumber -gt 1}
如果您想继续使用 findstr
,您只需将输出通过管道传输到 Select-Object
:
findstr /s /m /i "Searchstring.*" *.* | select -Skip 1
我在 Windows 7 PowerShell 中使用以下命令在面向对象的 Modelica 库中搜索特定字符串:
findstr /s /m /i "Searchstring.*" *.*
click for findstr documentation
该库由几个文件夹组成,其中包含带有实际代码的文本文件。为了减少(不需要的)结果的数量,我必须忽略每个文本文件的第一行。
不幸的是,我不知道如何使用 findstr
命令执行此操作。
您可以使用 Select-String
而不是 findstr
要获得除第一行之外的所有匹配项,请尝试如下操作:
Select-String -Path C:\dir\*.* -pattern "Searchstring*" | where {$_.LineNumber -gt 1}
如果您必须搜索子目录,您可以将其与 Get-Childitem
:
Get-Childitem C:\dir\*.* -recurse | Select-String -pattern "Searchstring*" | where {$_.LineNumber -gt 1}
如果您想继续使用 findstr
,您只需将输出通过管道传输到 Select-Object
:
findstr /s /m /i "Searchstring.*" *.* | select -Skip 1