Progetti Open Source e notizie del mondo Linux

HowTo, Notizie, Tutti

Bash, colorare l’output del comando grep

grep

grep è un utilissimo strumento della bash linux, che consente di filtrare in output solo le informazioni che ci servono, così che quando digitiamo un comando, non vi vengono mostrate informazioni inutili, ma solo ciò che a noi interessa.

ad esempio se voglio avere informazioni sulla versione OpenGL in uso nel sistema, posso utilizzare il comando

glxinfo

 

il “problema” è che questo comando ci da tantissime informazioni, e trovare la versione di OpenGL tra così tante informazioni è molto difficile, quindi ci viene in aiuto il comando grep.

infatti se lo stesso comando lo scriviamo in questo modo

glxinfo | grep OpenGL

 

NOTA: il comando | serve a redirigere l’output del programma invocato (in questo caso glxinfo), ad un secondo programma (in questo caso grep).

l’output mostra solo le stringhe che contengono al suo interno la parola OpenGL (il comando è case-sensitive, quindi maiuscole e minuscole fanno distinzione).

ma se volessimo un output ancora più pulito e chiaro, possiamo anche decidere di “colorare” la parola che scegliamo di filtrare (in questo caso OpenGL), in modo da ottenere il risultato della seguente immagine

 

grep

 

Per ottenere questo risultato ci basta usare l’opzione

--color

 

quindi se digitiamo il comando

glxinfo | grep --color OpenGL

ogni volta che nell’output è presente la parola OpenGL, questa sarà colorata, per far si che salti subito all’occhio.

 

Per evitare di dover sempre scrivere anche l’opzione –color, possiamo rendere tutto automatico, creando un alias, per far questo aprite il file di configurazione della bash con il seguente comando

gedit ~/.bashrc

 

e al suo interno inserite questa stringa

alias grep='grep --color'

salvate e chiudete il file, dopo di che ricaricate il file di configurazione della bash con il seguente comando

bash

 

A questo punto, ogni volta che userete il comando grep, in automatico verrà usata anche l’opzione –color