Cerca

Il comando grep permette di effettuare la ricerca nel contenuto dei file.

Cerca a partire dalla directory corrente tutti i file che contengono la parola "trovare" in tutte le sottocartelle ricorsivamente.

grep -R "trovare" . 

non cercare nei file di tipo binario:

grep -I -R "trovare" .

Restituisce solo i nomi dei file:

grep -l -R "trovare" .

Utilizzando ad esempio:

<comando> | grep "^travare"

dall'output di trova tutte le righe che iniziano con "trovare"

Utilizzando ad esempio:

<comando> | grep "travare$"

dall'output di trova tutte le righe che finiscono con "trovare"

Utilizzando ad esempio:

<comando> | grep -e "stringa1" -e "string2"

trova le righe che contengono stringa1 o stringa2

Utilizzando ad esempio:

<comando> | grep  "stringa1" | grep "string2"

trova le righe che contengono stringa1 e stringa2

Utilizzando ad esempio:

<comando> | grep -v "noncontiene"

tutte le righe che non contengono 'noncontiene'

Cerca nei file di tipo .txt la parola 'foo'

grep -R foo --include '*.txt' *

Cerca senza differenze tra maiuscole e minuscole:

grep -i "*.txt"

Comandi speciali: * [:alnum:] - Alphanumeric characters. * [:alpha:] - Alphabetic characters * [:blank:] - Blank characters: space and tab. * [:digit:] - Digits: '0 1 2 3 4 5 6 7 8 9'. * [:lower:] - Lower-case letters: 'a b c d e f g h i j k l m n o p q r s t u v w x y z'. * [:space:] - Space characters: tab, newline, vertical tab, form feed, carriage return, and space. * [:upper:] - Upper-case letters: 'A B C D E F G H I J K L M N O P Q R S T U V W X Y Z'.

Cerca tutte le maiuscole in filename:

grep '[:upper:]' filename
Indietro