Partilhar via


Encontrar

Procura 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 o <string>especificado.
/c Conta as linhas que contêm o <string> especificado e exibe o total.
/n Precede cada linha com o número da linha do arquivo.
/eu Especifica que a pesquisa não diferencia maiúsculas de minúsculas.
[/off[linha]] Não ignora arquivos que têm o atributo offline definido.
<"string"> Obrigatório. Especifica o grupo de caracteres (entre aspas) que você deseja pesquisar.
[<drive>:][<path>]<filename> Especifica o local e o nome do arquivo no qual procurar 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 string pesquisada foi encontrada
1 String pesquisada não encontrada
2 Arquivo pesquisado não encontrado ou opção de linha de comando inválida foi dada

Observações

  • Se você não usa /i, este comando procura exatamente o que você especifica para string. Por exemplo, este comando trata os caracteres a e A de forma diferente. Se você usar /i, no entanto, a pesquisa torna-se insensível a maiúsculas e minúsculas e trata a 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, obtendo entrada da fonte de entrada padrão (geralmente o teclado, um pipe (|) ou um arquivo redirecionado) e, em seguida, exibirá todas as linhas que contenham string.

  • Para sair da pesquisa de console, use CTRL-X ou CTRL-z.

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

  • Não é possível usar curingas (* e ?) na cadeia de caracteres pesquisada. Para procurar uma cadeia de caracteres com curingas 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, localizar ignora /n.

  • Este comando não reconhece retornos de carro. Quando você usa esse comando para procurar 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 retornos de carro (ou seja, uma cadeia de caracteres que provavelmente não será interrompida por um retorno de carro). Por exemplo, este comando não relata uma correspondência para o arquivo de imposto de cadeia de caracteres se ocorrer um retorno de carro entre as palavras tax e file.

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

  • comando Localizar não é possível ler fluxos de dados alternativos. Para pesquisar em fluxos de dados alternativos, use findstr, mais ou comandos /f.

Exemplos

Para exibir todas as linhas de pencil.md que contêm a cadeia de caracteres o apontador de lápis, 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 procurar um conjunto de ficheiros, pode utilizar carateres universais. Para pesquisar no diretório atual por arquivos que tenham a extensão .bat e que contenham a cadeia de caracteres PROMPT ignorando as maiúsculas e minúsculas, digite:

find /i "PROMPT" *.bat

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

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

Encontre todos os processos em execução que NÃO contêm 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)