comando Findstr no Windows é útil para procurar por um padrão de texto específico nos ficheiros. Sua funcionalidade é semelhante ao comando grep no Linux OS. Você pode encontrar abaixo a sintaxe de ‘findstr’ para vários casos de uso.

procura por texto / cadeia num ficheiro:

findstr pattern filename

por exemplo, para procurar a cadeia ‘Windows’ no ficheiro de texto CLItips.txt, o comando seria como abaixo.

findstr Windows CLItips.txt

Note que o comando acima procura exactamente ‘Windows’., Considera o caso por defeito. Então, se você tem uma linha que tem a palavra ‘windows’, ela não seria impressa na saída do comando acima.

ignorar o caso de texto:

você pode adicionar / I mudar para ignorar o caso na pesquisa. Então, se você executar ‘ findstr Windows /I clips.txt’, ele faz a correspondência de padrões sem distinção de maiúsculas.

Procure por qualquer uma das palavras indicadas

Se quiser imprimir as linhas com qualquer um dos conjuntos de palavras indicados, poderá incluir a lista de palavras entre aspas no comando findstr.,

findstr "word1 word2 word3.." filename.txt
findstr "Apple Orange" fruits.txt

Este comando imprimiria uma linha se tivesse a palavra ‘Apple’ ou a palavra ‘Orange’ ou ambas as palavras.

Search for pattern with multiple words

findstr /C:"word1 word2 word3..." filename

/ c indicates that the search pattern has to be matched literally.

Por exemplo, para procurar a string “Apple Ball Cat” no livro de ficheiros.txt, o comando seria como abaixo

 findstr /C:"Apple Ball Cat" Book.txt

Pesquisa com Expressões Regulares

Você pode usar expressões regulares com findstr opção /R. O comando típico seria como em baixo.,

findstr /R pattern filename.txt

Aqui o padrão pode ser especificado usando expressões regulares.

exemplos:
procure pela ocorrência de todas as palavras que terminam com ‘xyz’ em um arquivo.

findstr /R *xyz filename.txt

procura por texto em todos os ficheiros numa pasta actual

pode usar caracteres especiais ‘ * ” para indicar que todos os ficheiros numa pasta devem ser procurados pelo texto indicado.
Por exemplo, para procurar por ‘windows’ em todos os arquivos no diretório atual, você pode usar o comando abaixo.,

findstr /I windows *

Para procurar todos os arquivos de texto no diretório C:\data:

findstr /I windows C:\data\*.txt

Pesquisa para várias seqüências de caracteres

Se você precisa de pesquisa para várias seqüências de caracteres, então você pode fazer isso com o abaixo script em lotes.

@echo offfor /F %%i in (pattern.txt) do (echo Files containing %%ifindstr /M /C:%%i /S *.txt)

‘pattern.txt ‘ é o ficheiro com as cadeias de caracteres(uma por linha) que precisam de ser procuradas. O comando acima procura apenas ficheiros de texto. Você pode personalizar o comando findstr no script para pesquisar em arquivos com outras extensões. A adição da opção ‘/ M ‘ ao comando faz com que imprimam apenas os nomes dos ficheiros.,

Print only the lines where the given string is at the beginning of the line.

você pode adicionar / B switch para indicar que a string especificada deve estar no início da linha.

findstr /B /C:windows CLItips.txt

Print only the lines where the Giv string is at the end of the line

findstr /E /C:windows CLItips.txt

Print line numbers for all the matched lines.

pode adicionar /N ao comando findstr para imprimir os números das linhas correspondentes.

imprime apenas os nomes dos ficheiros

finstr /M /C:"pattern" *.log

Este comando procura o padrão em todos *.,regista os ficheiros, e depois imprime apenas os nomes dos ficheiros com o padrão. Mesmo que um arquivo tenha múltiplas ocorrências do padrão, ele é impresso apenas uma vez pelo findstr.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *