find

Cerca una stringa di testo in un file o file e visualizza righe di testo che contengono la stringa specificata.

Syntax

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

Parameters

Parameter Description
/v Visualizza tutte le righe che non contengono il <string>specificato.
/c Conta le righe che contengono il <string> specificato e visualizza il totale.
/n Precede ogni riga con il numero di riga del file.
/i Specifica che la ricerca non fa distinzione tra maiuscole e minuscole.
[/off[line]] Non ignora i file con l'attributo offline impostato.
<"string"> Required. Specifica il gruppo di caratteri (racchiuso tra virgolette) da cercare.
[<drive>:][<path>]<filename> Specifica il percorso e il nome del file in cui cercare la stringa specificata.
/? Visualizza la Guida al prompt dei comandi.

Exit codes

Exit code Description
0 La stringa cercata è stata trovata
1 Stringa cercata non trovata
2 Impossibile trovare il file cercato o l'opzione della riga di comando non valida

Remarks

  • Se non si usa /i, questo comando cerca esattamente ciò che si specifica per la stringa. Ad esempio, questo comando tratta i caratteri a e A in modo diverso. Se si utilizza /i, tuttavia, la ricerca non fa distinzione tra maiuscole e minuscole e viene considerata a come A lo stesso carattere.

  • Se la stringa che si desidera cercare contiene virgolette, è necessario usare virgolette doppie per ogni virgoletta contenuta nella stringa , ad esempio """"Questa stringa contiene virgolette""".

  • Se si omette un nome di file, questo comando funge da filtro, prendendo l'input dalla sorgente di input standard (in genere la tastiera, una barra verticale (|) o un file reindirizzato) e quindi visualizza tutte le righe che contengono stringa.

  • Per uscire dalla ricerca della console, usare CTRL-X o CTRL-z.

  • È possibile digitare i parametri e le opzioni della riga di comando per il comando di ricerca in qualsiasi ordine.

  • Non è possibile utilizzare i caratteri jolly (* e ?) nella stringa cercata. Per cercare una stringa con caratteri jolly e modelli regex, è possibile utilizzare il comando FINDSTR .

  • Se si utilizzano /c e /v nella stessa riga di comando, questo comando visualizza un conteggio delle righe che non contengono la stringa specificata. Se si specificano /c e /n nella stessa riga di comando, find ignora /n.

  • Questo comando non riconosce i ritorni a capo. Quando si usa questo comando per cercare testo in un file che include ritorni a capo, è necessario limitare la stringa di ricerca al testo che può essere trovato tra i ritorni a capo, ovvero una stringa che probabilmente non verrà interrotta da un ritorno a capo. Ad esempio, questo comando non segnala una corrispondenza per il file fiscale stringa se si verifica una restituzione a capo tra le parole tax e il file.

  • Il comando accetta caratteri jolly per i nomi di file. Durante la ricerca in file (o file) verrà stampato il file del file elaborato preceduto da dieci trattini.

  • Il comando Find non è in grado di leggere flussi di dati alternativi. Per la ricerca in flussi di dati alternativi utilizzare i comandi findstr, more o for /f .

Examples

Per visualizzare tutte le righe di pencil.md che contengono il temperamatite, digitare:

find "pencil sharpener" pencil.md

Per trovare il testo, "Gli scienziati hanno etichettato il loro documento solo per la discussione. Non è un report finale." (incluse le virgolette) nel file report.txt, digitare:

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

Per cercare un set di file, è possibile usare caratteri jolly. Per cercare nella directory corrente i file che hanno l'estensione.bat e che contengono la stringa PROMPT ignorando le maiuscole/minuscole, digitare:

find /i "PROMPT" *.bat

Per trovare i nomi dei file in una directory che contiene la stringa CPU, utilizzare la pipe (|) per indirizzare l'output del comando dir al comando find come segue:

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

Trova tutti i processi in esecuzione che NON contengono agente:

tasklist | find /v /i "agent"

Controllare se un servizio è in esecuzione:

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