GuideLe dritte dal Datacenter

Linux, comando Grep: che cos’è e come utilizzarlo

Dopo aver parlato del comando cURL, continuiamo il nostro viaggio nel mondo dei linguaggi di programmazione e dei vari comandi. Restando all’interno dell’area Linux, stavolta il comando che prenderemo in considerazione è Grep. L’idea di concentrare l’attenzione proprio su questo specifico comando risiede nel fatto che Grep è, allo stato attuale, uno dei comandi Linux più utilizzati in assoluto. L’obiettivo di questo articolo è quello di farti conoscere il comando Grep, dandoti un’idea chiara (seppur sintetica) su come utilizzarlo e sul perché sta riscuotendo un tale successo tra i programmatori.

Linux, comando Grep: che cos’è

All’interno del panorama Linux sono compresi un gran numero di comandi, ognuno di essi utile per determinati tipi di operazione. Alcuni di questi comandi non sembrano incontrare subito il favore dei professionisti del settore, quindi i programmatori. Altri, invece, fin da subito si dimostrano come soluzioni di grandissimo spesso, con il beneplacito degli addetti ai lavori che non si fanno pregare per il loro utilizzo. Il comando di oggi appartiene proprio a questa seconda tipologia.

Grep (che sta per Global Regular Expression Print) è sostanzialmente un tipo di filtro, un comando Linux che ricerca nei file di testo le linee che corrispondono ai modelli specificati con stringhe letterali o espressioni regolari, producendo poi un elenco dei nomi o delle linee per cui è stata trovata corrispondenza.

registra dominio

Perché è importante

Grep è dunque uno dei comandi Linux più utilizzati al momento, grazie al quale uno sviluppatore può semplificare la propria attività e completare in minor tempo le operazioni da svolgere. Un singolo comando che funziona come un filtro di ricerca, utilissimo per svariati motivi facili da immaginare. Il punto di forza di Grep è proprio questo: permette di fare ricerche dettagliate.

Cosa puoi fare con il comando Grep

Se vuoi cercare un file in cui è contenuto uno specifico termine di ricerca, puoi usare Grep. In buona sostanza, possiamo dire che Grep serve per trovare parole (una singola parola o anche una serie di parole) all’interno di un file, oppure una cartella invece di un singolo file. Facile quindi comprenderne l’importanza per i professionisti del web.

Un comando che, tramite delle piccole aggiunte, permette di affinare quanto più possibile il tipo di ricerca. Per esempio, la ricerca di parole che includono al loro interno lettere maiuscole e minuscole. Con l’aggiunta nella stringa di -i il comando Grep troverà la parola sia che abbia lettere maiuscole che anche minuscole.

Alcuni esempi

Bene, dopo questa breve presentazione è giunto il momento di andare nel dettaglio per fare qualche esempio di operazioni che puoi svolgere con il comando Grep.

La sintassi del comando è la seguente:

$ grep stringa file

Un altro esempio, che evidenzia il ruolo di “tool di ricerca” di Grep, è questa stringa in cui viene detto al comando di trovare tutti i file .it creati nel mese di gennaio:

$ ls -l *.it | grep gen

Nel paragrafo precedente abbiamo accennato al fatto che con Grep è possibile fare una ricerca in una cartelle e tutte le sottocartelle. Specificare quindi una cartella invece di un singolo file, utilizzando l’opzione -r per far questo. Ecco un esempio:

grep -r keliweb /home/user/keliweb/

Un altro esempio, che riprendiamo dalla Linux Bible di Christopher Negus, riguarda la ricerca in maniera ricorsiva del termine root nella directory /etc/sysconfig. In questo caso, l’aggiunta dell’opzione color per far risaltare il termine root (che comparirà in rosso) in ogni riga.

$ grep -ri --color root /etc/sysconfig/

In quest’altro esempio viene utilizzata l’opzione -v per trovare le righe del file /etc/services eccetto quelle che contengono il testo tcp (senza distinzione tra maiuscole e minuscole):

$ grep -vi tcp /etc/services

Si possono utilizzare le virgolette per includere un testo che, all’interno della ricerca, va interpretata come stringa unica. Ne nostro esempio effettuiamo la ricerca della frase registrare un dominio all’interno con l’uso delle apposite virgolette:

$ grep "registrare un dominio" *

Per concludere

Siamo certi che quanto detto in questo articolo sarà stato molto utile per farti comprendere che tipo di opportunità è Grep, un comando Linux davvero utile che può aiutarti a semplificare il tuo lavoro con le linee di codice. Rimanendo sempre in quest’ambito, ti invitiamo a valutare altre possibilità leggendo il nostro articolo dedicato ai migliori linguaggi di programmazione che un professionista del settore deve conoscere. Puoi considerare Grep come un’ulteriore aggiunta da inserire nel tuo bagaglio di conoscenze.

Lascia un commento

Back to top button