$ grep — corso
Linux · Unix · macOS — 10 lezioni

Imparare a cercare
tra le righe.

Un corso pratico al comando grep, lo strumento più antico e ancora insostituibile per cercare testo dentro file e flussi. Dieci lezioni, ognuna con un blocco di teoria, uno di pratica e un trucco che da solo vale il tempo speso.

autoreun corso autodidatta
durata~ 2 ore di lettura
prerequisitiun terminale aperto
livelloda zero a discreto
// indice delle lezioni
01

Cos'è grep e dove vive

Storia breve, filosofia Unix, differenze tra BSD (macOS) e GNU (Linux), come riconoscere quale versione si sta usando.

02

Le basi: pattern, file e flag essenziali

La sintassi vera, gli exit code, e le otto opzioni che userai tutti i giorni: -i, -n, -c, -v, -l, -w, -x, -q.

03

Espressioni regolari di base

I metacaratteri fondamentali (., *, ^, $, []) e perché le virgolette singole non sono mai un dettaglio.

04

Espressioni regolari estese con -E

Quantificatori (+, ?, {n,m}), alternanza con |, gruppi (…): il salto di qualità nella scrittura dei pattern.

05

Ricerca ricorsiva nei progetti

-r, --include, --exclude-dir: usare grep come motore di ricerca dentro un repository di codice.

06

Contesto: vedere le righe attorno al match

Le opzioni -A, -B, -C: indispensabili per leggere log, configurazioni e tracciare il punto in cui qualcosa è andato storto.

07

Output, formattazione e colori

Stampare solo la parte che matcha (-o), conteggi, separatori NUL, e il rapporto tra grep e i suoi vicini di pipe (cut, awk, sort).

08

PCRE: il superpotere di grep -P

Lookahead, lookbehind, non-greedy, classi abbreviate (\d, \w): regex avanzate e perché su macOS serve ggrep.

09

Pipe e composizione

Grep come filtro in catene Unix: ps | grep, tail -f | grep, git log | grep, e l'uso di pattern list con -f.

10

Performance, binari, e alternative moderne

Velocizzare con LC_ALL=C, gestire file binari, e capire quando vale la pena di passare a ripgrep, ag o ack.