GREP
Βρίσκει ένα αλφαριθμητικό μέσα σ' ένα κείμενο.
grep string file1
Επιστρέφει τις γραμμές στις οποίες εμφανίζεται το string όχι απαραίτητα ως ολόκληρη λέξη.
ΠΑΡΑΔΕΙΓΜΑ
Line (του file1)--> Congratulations! You have just discovered the secret message
String--> cover
Αποτέλεσμα--> Η γραμμή επιστρέφεται.
grep -l string file1 file2
Επιστρέφει τα ονόματα των αρχείων στα οποία υπάρχει το string.
grep -n string file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες περιέχουν το string και τον αύξοντα αριθμό της γραμμής. Μπορεί στο τέλος να υπάρχουν περισσότερα από ένα αρχεία, οπότε εμφανίζεται μπροστά και το όνομα του αρχείου.
ΠΑΡΑΔΕΙΓΜΑ
grep -n Takata file1 file2
FILE1
Binst
Dickerson
Eisner
Green
Hrarii
Janatha
Lewis
Takata
Wozni
FILE2
Eisner
Frost
Green
Takata
Wozni
ΑΠΟΤΕΛΕΣΜΑ
file1:8:Takata
file2:4:Takata
grep -c string file1
Επιστρέφει το πλήθος των γραμμών του file1, στις οποίες εμφανίζεται το string.
ΠΑΡΑΔΕΙΓΜΑ
grep -c Takata file1 file2
ΑΠΟΤΕΛΕΣΜΑ
file1:1
file2:1
grep -b string file1
Επιστρέφει το μπλοκ κάθε γραμμής του file1, στην οποία εμφανίζεται το string.
ΠΑΡΑΔΕΙΓΜΑ
grep -b Takata file1 file2
ΑΠΟΤΕΛΕΣΜΑ
file1:0:Takata
file2:0:Takata
grep -i string file1
Κάνει την κλασσική αναζήτηση αγνοώντας όμως κεφαλαία και πεζά.
ΠΑΡΑΔΕΙΓΜΑ
Line (του file1)--> Congratulations! You have just discovered the secret message
String--> CONGRAtuLatiOns
Αποτέλεσμα--> Η γραμμή επιστρέφεται.
grep -v string file1
Εμφανίζει όλες τις γραμμές του file1 στις οποίες δεν υπάρχει το string.
ΠΑΡΑΔΕΙΓΜΑ
Line (του file1)--> Congratulations! You have just discovered the secret message
String--> Congratulations
Αποτέλεσμα--> Η γραμμή δεν επιστρέφεται.
Παραδείγματα με regular expressions
grep gh file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες περιέχουν το "gh"
grep '^con' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες αρχίζουν με con
grep 'ing$' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες τελειώνουν σε ing
grep '[A-Z]' file1
Επιστρέφει όλες τις γραμμές του file1 στις οποίες υπάρχει ένας τουλάχιστο κεφαλαίος λατινικός χαρακτήρας.
grep '^[A-Z]' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες αρχίζουν με κεφαλαίο λατινικό χαρακτήρα.
grep '[A-Z]$' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες τελειώνουν σε κεφαλαίο λατινικό χαρακτήρα.
grep '^[A-Z]*$' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες έχουν όλους τους χαρακτήρες τους κεφαλαίους λατινικούς.
grep '[aeiouAEIOU]' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες περιέχουν ένα τουλάχιστο λατινικό φωνήεν.
grep '^[aeiouAEIOU]' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες ξεκινούν με λατινικό φωνήεν.
grep '[aeiouAEIOU]$' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες τελειώνουν σε λατινικό φωνήεν.
grep -i '[aeiou]' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες περιέχουν ένα τουλάχιστο λατινικό φωνήεν, ανεξάρτητα από το αν το φωνήεν είναι κεφαλαίο ή πεζό αφού το -i αγνοεί πεζά και κεφαλάια.
grep -i '^[aeiou]' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες ξεκινούν με λατινικό φωνήεν, ανεξάρτητα από το αν το φωνήεν είναι κεφαλαίο ή πεζό αφού το -i αγνοεί πεζά και κεφαλάια.
grep -i '[aeiou]$' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες τελειώνουν σε λατινικό φωνήεν, ανεξάρτητα από το αν το φωνήεν είναι κεφαλαίο ή πεζό αφού το -i αγνοεί πεζά και κεφαλάια.
grep -i '^[^aeiou]' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες ξεκινούν με γράμμα το οποίο δεν είναι είτε κεφαλαίο είτε πεζό φωνήεν.
grep -i '[^aeiou]$' file1
Επιστρέφει όλες τις γραμμές του file1 οι οποίες τελειώνουν με γράμμα το οποίο δεν είναι φωνήεν είτε κεφαλαίο είτε πεζό.
grep -i '[aeiou].*[aeiou]' file1
Επιστρέφει όλες τις γραμμές οι οποίες περιέχουν δύο ή περισσότερα φωνήεντα, κεφαλαία ή πεζά.
grep -i '^[^aeiou]*[aeiou][^aeiou]*$' file1
Επιστρέφει όλες τις γραμμές που έχουν ένα ακριβώς φωνήεν κεφαλαίο ή πεζό.