Questo articolo spiega come iniziare a utilizzare grep
comando in Linux®.
Cos'è grep
?
Usi il grep
comando all'interno di un sistema basato su Linux o Unix per eseguire ricerche di testo per criteri definiti di parole o stringhe. grep
sta per G ricerca locale di una R egular E xpression e P strappalo.
grep
sintassi
L'esempio seguente mostra la struttura di base del comando:
grep 'string' filename(s)
Questo comando ricerca e restituisce tutte le righe di testo che contengono i criteri string indicati in nome/i file .
Opzioni:
Puoi aggiungere una qualsiasi delle seguenti opzioni singolarmente o in combinazione per perfezionare la tua ricerca:
- -i :stampa le righe con criteri corrispondenti ignorando le maiuscole/minuscole.
- -l :stampa solo i nomi dei file.
- -n :stampa le righe con criteri e numeri di riga corrispondenti.
- -c :stampa il conteggio delle righe con criteri corrispondenti.
- -v :stampa le righe che non corrispondono ai criteri (ricerca inversa).
- -w :stampa le corrispondenze di intere parole.
- -A n :stampa n righe dopo le partite.
- -B n :stampa n righe prima delle partite.
- -C n :stampa n righe prima e dopo le partite.
Esempio grep
comandi con uscita
Esempio:il file "example.txt" contiene le seguenti 5 righe:
hello world
Hello World
Hello Worlds
Hello Moon
321 Goodnight
Comando di base:trova e stampa una corrispondenza esatta per "mondo"
[root@test ~]# grep world example.txt
hello world
Utilizza "-i" per ignorare maiuscole e minuscole
[root@test ~]# grep -i world example.txt
hello world
Hello World
Hello Worlds
Utilizza "-n" per trovare e stampare corrispondenze e includere i numeri di riga.
[root@test ~]# grep -n Hello example.txt
2:Hello World
3:Hello Worlds
4:Hello Moon
Usa "-c" per trovare e stampare il numero di corrispondenze di riga.
[root@test ~]# grep -c hello example.txt
1
Utilizza una combinazione di "-c" e "-i" per perfezionare la ricerca.
[root@test ~]# grep -ci hello example.txt
4
Utilizza "-v" per trovare e stampare tutte le righe inverse (non corrispondenti).
[root@test ~]# grep -v world example.txt
Hello World
Hello Worlds
Hello Moon
321 Goodnight
Utilizza una combinazione di "-v" e "-i" per perfezionare la ricerca.
[root@test ~]# grep -vi world example.txt
Hello Moon
321 Goodnight
Utilizza "-w" per trovare e stampare intere corrispondenze di parole.
[root@test ~]# grep -w World example.txt
Hello World
Utilizza "-A n" per trovare e stampare le corrispondenze insieme alle "n" righe dopo la corrispondenza.
[root@test ~]# grep -A 2 Worlds example.txt
Hello Worlds
Hello Moon
321 Goodnight
Utilizza "-B n" per trovare e stampare le corrispondenze insieme alle "n" righe prima della corrispondenza.
[root@test ~]# grep -B 2 Goodnight example.txt
Hello Worlds
Hello Moon
321 Goodnight
Utilizza "CA n" per trovare e stampare la corrispondenza insieme alle "n" righe prima e dopo la corrispondenza.
[root@test ~]# grep -C 2 Worlds example.txt
hello world
Hello World
Hello Worlds
Hello Moon
321 Goodnight