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á řetězec textu v souboru nebo souborech a zobrazí řádky textu, které obsahují zadaný řetězec.
Syntaxe
find [/v] [/c] [/n] [/i] [/off[line]] <"string"> [[<drive>:][<path>]<filename>[...]]
Parametry
Parametr | Popis |
---|---|
/v | Zobrazí všechny řádky, které neobsahují zadanou <string> . |
/c | Spočítá řádky, které obsahují zadanou <string> , a zobrazí celkový součet. |
/n | Předchází každému řádku číslo řádku souboru. |
/já | Určuje, že hledání nerozlišuje malá a velká písmena. |
[/off[řádek]] | Nepřekočuje soubory, které mají nastavený atribut offline. |
<"string"> |
Povinné. Určuje skupinu znaků (uzavřenou v uvozovkách), kterou chcete vyhledat. |
[<drive>:][<path>]<filename> |
Určuje umístění a název souboru, ve kterém chcete vyhledat zadaný řetězec. |
/? | Zobrazí nápovědu na příkazovém řádku. |
Ukončovací kódy
Ukončovací kód | Popis |
---|---|
0 | Byl nalezen hledaný řetězec. |
1 | Hledaný řetězec nebyl nalezen. |
2 | Hledaný soubor nebyl nalezen nebo byl udělen neplatný přepínač příkazového řádku. |
Poznámky
Pokud nepoužíváte /i, tento příkaz hledá přesně to, co zadáte pro řetězcové. Tento příkaz například zpracovává znaky
a
aA
odlišně. Pokud však použijete /i, hledání se změní na malá a velká písmena a bude zacházet sa
aA
jako se stejným znakem.Pokud řetězec, který chcete vyhledat, obsahuje uvozovky, musíte použít uvozovky pro každou uvozovku obsaženou v řetězci (například ""Tento řetězec obsahuje uvozovky""").
Pokud vynecháte název souboru, tento příkaz funguje jako filtr, který přebírá vstup ze standardního vstupního zdroje (obvykle z klávesnice, kanálu (|) nebo přesměrovaného souboru) a potom zobrazí všechny řádky, které obsahují řetězec.
Chcete-li ukončit vyhledávání konzoly, použijte
CTRL-X
neboCTRL-z
.Můžete zadat parametry a možnosti příkazového řádku pro najít příkaz v libovolném pořadí.
Ve hledaném řetězci nemůžete použít zástupné znaky (* a ?). Pokud chcete vyhledat řetězec se vzory se zástupnými znaky a vzory regulárních výrazů, můžete použít příkaz FINDSTR.
Pokud použijete /c a /v na stejném příkazovém řádku, zobrazí tento příkaz počet řádků, které neobsahují zadaný řetězec. Pokud zadáte /c a /n na stejném příkazovém řádku, najít ignoruje /n.
Tento příkaz nerozpozná návrat na začátek řádku. Pokud tento příkaz použijete k vyhledání textu v souboru, který obsahuje návrat na začátek řádku, je nutné omezit hledaný řetězec na text, který lze najít mezi návraty na začátek řádku (to znamená řetězec, který pravděpodobně nebude přerušen návratem na začátek řádku). Tento příkaz například nehlásí shodu pro soubor daně z řetězce, pokud mezi slovy daň a souborem dojde k návratu na začátek řádku.
Příkaz přijímá zástupné cardy pro názvy souborů. Při hledání v souboru (nebo souborech) se vytiskne soubor zpracovaného souboru před deseti pomlčkami.
příkaz Najít nemůže číst alternativní datové proudy. Pro vyhledávání v alternativních datových proudech použijte findstr, další nebo pro příkazy /f.
Příklady
Chcete-li zobrazit všechny řádky z pencil.md, které obsahují řetězec zostřidlo tužky, zadejte:
find "pencil sharpener" pencil.md
Pokud chcete najít text, "Vědci označili svůj dokument pouze pro diskuzi. Nejedná se o konečnou zprávu." (včetně uvozovek) v souboru report.txt zadejte:
find """The scientists labeled their paper for discussion only. It is not a final report.""" < report.txt
Pokud chcete vyhledat sadu souborů, můžete použít zástupné cardy. Pokud chcete v aktuálním adresáři vyhledat soubory, které mají příponu .bat a které obsahují řetězec PROMPT ignorování případu, zadejte:
find /i "PROMPT" *.bat
Pokud chcete najít názvy souborů v adresáři, který obsahuje řetězec procesoru, pomocí kanálu (|) nasměrujte výstup příkazu dir do příkazu najít následujícím způsobem:
dir c:\temp /s /b | find "CPU"
Vyhledejte všechny spuštěné procesy, které neobsahují agenta:
tasklist | find /v /i "agent"
Zkontrolujte, jestli je spuštěná služba:
sc query Winmgmt | find "RUNNING" >nul 2>&1 && (echo service is started) || (echo service is stopped)