příkaz Findstr v systému Windows je užitečný pro vyhledávání konkrétního textového vzoru v souborech. Jeho funkce je podobná příkazu grep v operačním systému Linux. Níže najdete syntaxi „findstr“ pro různé případy použití.

Vyhledávání textový řetězec v souboru:

findstr pattern filename

například, k hledání řetězec „Windows“ v textovém souboru CLItips.txt, příkaz by byl níže.

findstr Windows CLItips.txt

Všimněte si, že výše uvedený příkaz hledá přesně „Windows“., Považuje případ za výchozí. Takže pokud máte řádek, který má slovo „windows“, nebude vytištěn na výstupu výše uvedeného příkazu.

ignorovat textové případ:

můžete přidat /i přepnout ignorovat případ ve vyhledávání. Takže pokud spustíte ‚ findstr windows / i CLItips.txt‘, to dělá případ necitlivé vzor párování.

vyhledejte některá z daných slov

Chcete – li vytisknout řádky, které mají některou z daných slov set, můžete přiložit seznam slov ve dvojitých uvozovkách v příkazu findstr.,

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

Tento příkaz vytiskne řádek, pokud má slovo „Apple“ nebo slovo „Orange“ nebo obě slova.

Vyhledávání pro vzorek s více slov

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

/C znamená, že vyhledávací vzor musí být uzavřeno doslova.

například pro vyhledávání řetězce „Apple Ball Cat“ v knize souborů.txt, příkaz by byl níže

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

vyhledávání pomocí regulárních výrazů

pomocí přepínače findstr /R můžete použít regulární výrazy. Typický příkaz by byl níže.,

findstr /R pattern filename.txt

zde lze vzor zadat pomocí regulárních výrazů.

příklady:
vyhledejte výskyt všech slov končících “ xyz “ v souboru.

findstr /R *xyz filename.txt

Vyhledávání textu ve všech souborech v aktuálním adresáři

můžete použít zástupné znaky ‚*“ určit, že všechny soubory v adresáři by měly být prohledány pro daný řetězec.
například pro vyhledávání „windows“ ve všech souborech v aktuálním adresáři můžete použít níže uvedený příkaz.,

findstr /I windows *

vyhledat všechny textové soubory v adresáři C:\data:

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

Hledat pro více řetězců

Pokud potřebujete k hledání více řetězců, pak můžete dělat, že s níže dávkový skript.

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

‚vzor.txt ‚ je soubor, který má řetězce (jeden na řádek), které je třeba hledat. Výše uvedený příkaz prohledává pouze textové soubory. Příkaz findstr ve skriptu můžete přizpůsobit vyhledávání v souborech s jinými rozšířeními. Přidání volby‘ / M ‚ do příkazu způsobí tisk pouze názvů souborů.,

vytiskněte pouze řádky, kde je daný řetězec na začátku řádku.

můžete přidat / B přepínač pro označení, že zadaný řetězec by měl být na začátku řádku.

findstr /B /C:windows CLItips.txt

Tisknout pouze řádky, kde se daný řetězec je na konci řádku,

findstr /E /C:windows CLItips.txt

Tiskové čísla řádků pro všechny odpovídající řádky.

můžete přidat /n přepínač do příkazu findstr pro tisk čísel řádků pro odpovídající řádky.

vytiskněte pouze názvy souborů

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

Tento příkaz vyhledá vzor ve všech *.,log soubory, a pak vytiskne pouze názvy souborů, které mají vzor. I když má soubor více výskytů vzoru, je vytištěn pouze jednou findstr.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *