grep: cercare strighe nei file

Uno dei comandi che uso maggiormente da CLI, sia su Linux che su MacOS, è grep (general regular expression print). Grep permette di cercare stringhe nei file; di base la sintassi è:

Ad esempio per cercare “casa” nel file “pippo.txt” possiamo digitare:

Ci sono una serie di opzioni che possiamo utilizzare e che permettono di rendere la ricerca più precisa. Ad esempio, di default la stringa da cercare è case_sensitive, pertanto nel precedente esempio non verrebbero cercate le parole “Casa” oppure “CASA”, ma solo “casa”. Per rendere la ricerca case_insensitive, possiamo aggiungere l’opzione -i, es:

Ecco le opzioni principali:

-i Ignora le differenze tra lettere maiuscole e minuscole.

-A[n] Mostra n righe successive alla stringa trovata

-B[n] Mostra n righe precedenti alla stringa trovata

-C[n] Mostra n righe precedenti e successive alla stringa trovata

-n Precede ogni linea dei risultati con il numero di linea all’interno del file (partendo da 1).

-l Indica solo i nomi dei file in cui è stata trovata almeno una corrispondenza (ciascun file è elencato una sola volta, indipendentemente dal numero di corrispondenze in esso trovate).

-v Nega i modelli specificati, producendo un elenco delle linee che non soddisfano alcun modello.

-E I modelli sono espressioni regolari estese invece che espressioni regolari di base.

-c Produce per ciascun file solo il conteggio del numero di linee che corrispondono.

-r Cerca anche nelle sottocartelle

Un’altra cosa molto utile è la ricerca sono nei file con una certa estensioni anche nelle sottocartelle. In questo caso il comando da dare è:

enjoy!

Ti interessa acquistare un dominio a prezzi ultraconvenienti? clicca qui

Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂



Commenta