Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vyhledá vzory textu v souborech.
Syntax
findstr [/b] [/e] [/l | /r] [/s] [/i] [/x] [/v] [/n] [/m] [/o] [/p] [/f:<file>] [/c:<string>] [/g:<file>] [/d:<dirlist>] [/a:<colorattribute>] [/off[line]] <strings> [<drive>:][<path>]<filename>[ ...]
Parameters
| Parameter | Description |
|---|---|
| /b | Odpovídá vzoru textu, pokud je na začátku řádku. |
| /e | Odpovídá vzoru textu, pokud je na konci řádku. |
| /l | Zpracovává doslova vyhledávací řetězce. |
| /r | Zpracovává vyhledávací řetězce jako regulární výrazy. Toto je výchozí nastavení. |
| /s | Prohledá aktuální adresář a všechny podadresáře. |
| /i | Při hledání řetězce ignoruje malá a velká písmena znaků. |
| /x | Vytiskne řádky, které přesně odpovídají. |
| /v | Vytiskne jenom řádky, které neobsahují shodu. |
| /n | Vytiskne číslo řádku každého řádku, který odpovídá. |
| /m | Vytiskne pouze název souboru, pokud soubor obsahuje shodu. |
| /o | Vytiskne posun znaků před každým odpovídajícím řádkem. |
| /p | Přeskočí soubory s netisknutelnými znaky. |
| /off[line] | Nepřekočuje soubory, které mají nastavený atribut offline. |
/f:<file> |
Získá seznam souborů ze zadaného souboru. |
/c:<string> |
Použije zadaný text jako literálový hledaný řetězec. |
/g:<file> |
Získá vyhledávací řetězce ze zadaného souboru. |
/d:<dirlist> |
Vyhledá zadaný seznam adresářů. Každý adresář musí být oddělený středníkem (;), například dir1;dir2;dir3. |
/a:<colorattribute> |
Určuje atributy barev se dvěma šestnáctkovými číslicemi. Další informace potřebujete zadat color /?. |
<strings> |
Určuje text, který se má hledat v názvu souboru. Required. |
[\<drive>:][<path>]<filename>[...] |
Určuje umístění a soubor nebo soubory, které se mají prohledávat. Vyžaduje se aspoň jeden název souboru. |
| /? | Zobrazí nápovědu na příkazovém řádku. |
Remarks
Všechny parametry příkazového řádku findstr musí předcházet řetězcům a názvu souboru v příkazovém řetězci.
Regulární výrazy používají literální znaky i metaznaky k vyhledání vzorů textu, nikoli přesných řetězců znaků.
Literální znak je znak, který nemá zvláštní význam v syntaxi regulárního výrazu; místo toho odpovídá výskytu tohoto znaku. Například písmena a číslice jsou literální znaky.
Metaznak je symbol se zvláštním významem (operátor nebo oddělovač) v syntaxi regulárního výrazu.
Akceptované metaznaky jsou:
Meta-character Value .Zástupný znak – Libovolný znak *Opakovat – Nula nebo více výskytů předchozího znaku nebo třídy. ^umístění počáteční čáry – začátek řádku. $Umístění koncové čáry – konec čáry. [class]Třída znaků – Libovolný znak v sadě. [^class]Inverzní třída - Libovolný znak, který není v sadě. [x-y]Rozsah – Libovolné znaky v určeném rozsahu. \xEscape – Doslovné použití metaznaku. \<stringpozice počátečního slova – začátek slova. string\>Koncová pozice slova – konec slova. Speciální znaky v syntaxi regulárního výrazu mají při jejich společném použití největší sílu. Použijte například kombinaci zástupného znaku (
.) a zopakujte znak (*) tak, aby odpovídal libovolnému řetězci znaků:.*Následující výraz použijte jako součást většího výrazu, aby bylo možné vyhledat libovolný řetězec začínající písmenem b a končícím řetězcem ing:
b.*ing
Pokud chcete vyhledat více řetězců v sadě souborů, musíte vytvořit textový soubor, který obsahuje každé kritérium hledání na samostatném řádku.
K oddělení více vyhledávacích řetězců používejte mezery, pokud argument nemá předponu /c.
Examples
Chcete-li vyhledat hello nebo tam v souboru x.y, napište:
findstr hello there x.y
Chcete-li vyhledat hello v souboru x.y, napište:
findstr /c:"hello there" x.y
Chcete-li najít všechny výskyty slova Windows (s velkým počátečním písmenem W) v souboru proposal.txt, zadejte:
findstr Windows proposal.txt
Chcete-li prohledat všechny soubory v aktuálním adresáři a ve všech podadresářích, které obsahovaly slovo Windows, bez ohledu na velká a malá písmena, zadejte:
findstr /s /i Windows *.*
Chcete-li vyhledat všechny výskyty řádků, které začínají řetězcem FOR a před nimiž je nula nebo více mezer (jako ve smyčce počítačového programu), a zobrazit číslo řádku, na kterém jsou jednotlivé výskyty nalezeny, zadejte:
findstr /b /n /r /c:^ *FOR *.bas
Chcete-li zobrazit seznam přesných souborů, které chcete prohledat v textovém souboru, použijte kritéria hledání v stringlist.txtsouboru, abyste prohledali soubory uvedené v filelist.txt, a pak výsledky uložte do souboru results.out, zadejte:
findstr /g:stringlist.txt /f:filelist.txt > results.out
Chcete-li vypsat každý soubor obsahující slovo počítač v aktuálním adresáři a ve všech podadresářích bez ohledu na velká a malá písmena, zadejte:
findstr /s /i /m \<computer\> *.*
Pokud chcete zobrazit seznam všech souborů obsahujících slovo počítač a všechna ostatní slova, která začínají psaním (například compliment a soutěžit), zadejte:
findstr /s /i /m \<comp.* *.*