Como encontro arquivos contendo “string A” e NOT contendo “string B” e imprimo seus nomes em um arquivo?

0

Eu estava procurando em Eu comecei com isso, mas parece que não funciona:

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

Por exemplo, eu quero obter uma lista de arquivos contendo "string A", mas NÃO "string B".

Eu gostaria de usar a linha de comando do Windows, se possível, ou o Windows PowerShell.

    
por thecoolmacdude 18.06.2018 / 17:21

1 resposta

1

Isso deve ser feito no powershell:

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

Para incluir subpastas:

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

Não estou certo de que o seu exemplo específico seja diferente do meu modelo, mas usando seus termos de pesquisa específicos, tente isto:

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