Cercare un testo con grep in Linux

Mattepuffo's logo
Cercare un testo con grep in Linux

Cercare un testo con grep in Linux

L'altro giorno dovevo cercare una porzione di testo dentro parecchi file.

Anche se i file erano quasi tutti dentro la stessa directory, non mi andava di cercare dentro ogni singolo file uno alla volta!

Per fare una ricerca massiva, mi è venuto in soccorso grep.

Quindi questa guida è valida se stato usando Linux, Mac OS X o una BSD.

Detto ciò, facciamo un esempio banale.

Dentro la mia home ho messo un file con questo testo:

ciao, come stai? tutto bene te?
tutto bene grazie

A questo punto con grep voglio cercare la stringa come stai.

Possiamo fare così:

$ grep -Ril "come stai" $HOME
/home/matte/test.txt

Le opzioni sono rispettivamente:

  • R -> cerca in maniera ricorsiva; ovviamente c'è da aspettare un pò, a seconda di quanti file o directory ci sono
  • i -> ignore case, quindi cerca a prescindere da maiuscolo o minuscolo
  • l -> cambia l'output a schermo (fate delle prove per verificare)

Al posto di $HOME potete mettere il path che vi serve (come ad esmpio /var/log).

Enjoy!


Condividi

Commentami!