find

Söker efter en textsträng i en fil eller fil och visar textrader som innehåller den angivna strängen.

Syntax

find [/v] [/c] [/n] [/i] [/off[line]] <"string"> [[<drive>:][<path>]<filename>[...]]

Parameters

Parameter Description
/v Visar alla rader som inte innehåller den angivna <string>.
/c Räknar de rader som innehåller den angivna <string> och visar summan.
/n Föregår varje rad med filens radnummer.
/i Anger att sökningen inte är skiftlägeskänslig.
[/off[line]] Hoppar inte över filer som har offlineattributet inställt.
<"string"> Required. Anger den grupp med tecken (omges av citattecken) som du vill söka efter.
[<drive>:][<path>]<filename> Anger platsen och namnet på filen där du vill söka efter den angivna strängen.
/? Visar hjälp i kommandotolken.

Exit codes

Exit code Description
0 Den sökta strängen hittades
1 Söksträngen hittades inte
2 Sökfilen hittades inte eller ogiltig kommandoradsväxel angavs

Remarks

  • Om du inte använder /i söker det här kommandot efter exakt det du anger för sträng. Det här kommandot behandlar till exempel tecknen a och A på olika sätt. Om du använder /i blir sökningen dock inte skiftlägeskänslig och den behandlar a och A som samma tecken.

  • Om strängen som du vill söka efter innehåller citattecken måste du använda dubbla citattecken för varje citattecken som finns i strängen (till exempel """Den här strängen innehåller citattecken").

  • Om du utelämnar ett filnamn fungerar det här kommandot som ett filter som tar indata från standardindatakällan (vanligtvis tangentbordet, ett rör (|) eller en omdirigerad fil) och visar sedan alla rader som innehåller strängar.

  • Om du vill avsluta konsolsökningen använder du CTRL-X eller CTRL-z.

  • Du kan ange parametrar och kommandoradsalternativ för sökkommandot i valfri ordning.

  • Du kan inte använda jokertecken (* och ?) i den sökta strängen. Om du vill söka efter en sträng med jokertecken och regex-mönster kan du använda kommandot FINDSTR .

  • Om du använder /c och /v på samma kommandorad visar det här kommandot antalet rader som inte innehåller den angivna strängen. Om du anger /c och /n på samma kommandorad ignorerar find/n.

  • Det här kommandot känner inte igen vagnreturer. När du använder det här kommandot för att söka efter text i en fil som innehåller vagnreturer måste du begränsa söksträngen till text som kan hittas mellan vagnreturer (det vill:s en sträng som sannolikt inte kommer att avbrytas av en vagnretur). Det här kommandot rapporterar till exempel inte någon matchning för strängskattefilen om en vagnretur inträffar mellan orden skatt och fil.

  • Kommandot accepterar jokertecken för filnamn. När du söker i filen (eller filerna) skrivs filen för den bearbetade filen föregås av tio bindestreck.

  • Find-kommandot kan inte läsa alternativa dataströmmar. Om du vill söka i alternativa dataströmmar använder du findstr, moreeller for /f kommandon.

Examples

Om du vill visa alla rader från pencil.md som innehåller pennvässaren skriver du:

find "pencil sharpener" pencil.md

För att hitta texten "Forskarna etiketterade sitt papper endast för diskussion. Det är inte en slutrapport." (inklusive citattecken) i filen report.txt skriver du:

find """The scientists labeled their paper for discussion only. It is not a final report.""" < report.txt

Om du vill söka efter en uppsättning filer kan du använda jokertecken. Om du vill söka i den aktuella katalogen efter filer som har filnamnstillägget .bat och som innehåller strängen PROMPT som ignorerar skiftläget skriver du:

find /i "PROMPT" *.bat

Om du vill hitta filnamn i en katalog som innehåller strängen CPU använder du pipe (|) för att dirigera utdata från dir kommandot till find kommandot på följande sätt:

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

Hitta alla processer som körs och som INTE innehåller agent:

tasklist | find /v /i "agent"

Kontrollera om en tjänst körs:

sc query  Winmgmt | find "RUNNING" >nul 2>&1 && (echo service is started) || (echo service is stopped)