localizar

Pesquisa uma cadeia de caracteres de texto em um arquivo ou arquivos e exibe linhas de texto que contêm a cadeia de caracteres especificada.

Sintaxe

find [/v] [/c] [/n] [/i] [/off[line]] <"string"> [[<drive>:][<path>]<filename>[...]]

Parâmetros

Parâmetro Descrição
/v Exibe todas as linhas que não contêm as especificadas <string>.
/c Conta as linhas que contêm as especificadas <string> e exibe o total.
/n Precede cada linha com o número de linha do arquivo.
/i Especifica que a pesquisa não diferencia maiúsculas de minúsculas.
[/off[line]] Não ignora arquivos que têm o atributo offline definido.
<"string"> Obrigatórios. Especifica o grupo de caracteres (entre aspas) que você deseja pesquisar.
[<drive>:][<path>]<filename> Especifica o local e o nome do arquivo no qual pesquisar a cadeia de caracteres especificada.
/? Exibe a ajuda no prompt de comando.

Códigos de saída

Código de saída Descrição
0 A cadeia de caracteres pesquisada foi encontrada
1 Cadeia de caracteres pesquisada não encontrada
2 O arquivo pesquisado não encontrado ou comutador de linha de comando inválido foi dado

Comentários

  • Se você não usar /i, esse comando procurará exatamente o que você especificar para cadeia de caracteres. Por exemplo, esse comando trata os caracteres a e A de forma diferente. Se você usar /i, no entanto, a pesquisa se tornará sem diferenciação de maiúsculas de minúsculas a , e ela será tratada e A como o mesmo caractere.

  • Se a cadeia de caracteres que você deseja pesquisar contiver aspas, você deverá usar aspas duplas para cada aspa contida na cadeia de caracteres (por exemplo, ""Esta cadeia de caracteres contém aspas""").

  • Se você omitir um nome de arquivo, esse comando atuará como um filtro, recebendo a entrada da fonte de entrada padrão (geralmente o teclado, um pipe (|) ou um arquivo redirecionado) e, em seguida, exibirá todas as linhas que contêm cadeia de caracteres.

  • Para sair do uso CTRL-X da pesquisa do console ou CTRL-z.

  • Você pode digitar parâmetros e opções de linha de comando para o comando localizar em qualquer ordem.

  • Você não pode usar curingas (* e ?) na cadeia de caracteres pesquisada. Para pesquisar uma cadeia de caracteres com caracteres curinga e padrões regex, você pode usar o comando FINDSTR .

  • Se você usar /c e /v na mesma linha de comando, esse comando exibirá uma contagem das linhas que não contêm a cadeia de caracteres especificada. Se você especificar /c e /n na mesma linha de comando, localize ignore /n.

  • Esse comando não reconhece o retorno do carro. Quando você usa esse comando para pesquisar texto em um arquivo que inclui retornos de carro, você deve limitar a cadeia de caracteres de pesquisa ao texto que pode ser encontrado entre os retornos de carro (ou seja, uma cadeia de caracteres que provavelmente não será interrompida por um retorno de carro). Por exemplo, esse comando não relatará uma correspondência para o arquivo de imposto de cadeia de caracteres se ocorrer uma devolução de carro entre as palavras imposto e arquivo.

  • O comando aceita caracteres curinga para nomes de arquivo. Ao pesquisar no arquivo (ou arquivos) ele imprimirá o arquivo do arquivo processado precedido por dez traços.

  • O comando Localizar não pode ler fluxos de dados alternativos. Para pesquisar em fluxos de dados alternativos, use o findstr, mais ou comandos /f .

Exemplos

Para exibir todas as linhas de pencil.md que contêm o apontador de lápis de cadeia de caracteres, digite:

find "pencil sharpener" pencil.md

Para encontrar o texto, "Os cientistas rotularam seu artigo apenas para discussão. Não é um relatório final." (incluindo as aspas) no arquivo report.txt , digite:

find """The scientists labeled their paper for discussion only. It is not a final report.""" < report.txt

Para pesquisar um conjunto de arquivos, você pode usar curingas. Para pesquisar o diretório atual em busca de arquivos que tenham a extensão .bat e que contenham o PROMPT de cadeia de caracteres ignorando o caso, digite:

find /i "PROMPT" *.bat

Para localizar nomes de arquivos em um diretório que contém a CPU de cadeia de caracteres, use o pipe (|) para direcionar a saída do comando dir para o comando localizar da seguinte maneira:

dir c:\temp /s /b | find "CPU"

Encontre todos os processos em execução que NÃO contêm o agente:

tasklist | find /v /i "agent"

Verifique se um serviço está em execução:

sc query  Winmgmt | find "RUNNING" >nul 2>&1 && (echo service is started) || (echo service is stopped)

Referências adicionais