如何查找包含“字符串 A”但不包含“字符串 B”的文件并将其名称输出到文件中?

如何查找包含“字符串 A”但不包含“字符串 B”的文件并将其名称输出到文件中?

我当时正在看另一个问题,但不确定如何将这些查询组合在一起。

我从这个开始,但它似乎不起作用:

findstr /S /M "string A" *.vb | findstr /S /M /V "string B" > output.txt

例如,我想要获取包含“字符串 A”但不包含“字符串 B”的文件列表。

如果可能的话,我想使用 Windows 命令行或 Windows PowerShell。

答案1

这应该在 powershell 中执行:

Get-ChildItem .\*.vb | Select-String A | Select-Object path -unique | Where-Object{!(Select-String -InputObject $_ -Pattern B)}

要包含子文件夹:

Get-ChildItem .\*.vb -Recurse | Select-String A | Select-Object path -unique | Where-Object{!(Select-String -InputObject $_ -Pattern B)}

我不确定您的具体示例与我的模型有何不同,但使用您的具体搜索词尝试以下操作:

Get-ChildItem .\*.vb -Recurse | Select-String HttpDelete | Select-Object path -unique | Where-Object{!(Select-String -InputObject (Get-Content $_.Path) -Pattern securityEntityPermission)}

相关内容