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!
linux bsd mac os x grep
Commentami!