Όπως υποδηλώνει το όνομα, η εκτύπωση grep ή καθολικής κανονικής έκφρασης σάς επιτρέπει να αναζητήσετε συγκεκριμένα μοτίβα κειμένου μέσα στα περιεχόμενα ενός αρχείου. Οι λειτουργίες του περιλαμβάνουν την αναγνώριση προτύπων, τον καθορισμό ευαισθησίας πεζών-κεφαλαίων, την αναζήτηση πολλών αρχείων, την αναδρομική αναζήτηση και πολλά άλλα.
Επομένως, είτε είστε αρχάριος είτε διαχειριστής συστήματος, είναι καλό να γνωρίζετε την εντολή grep για τον αποτελεσματικό εντοπισμό των αρχείων. Αυτό το σεμινάριο θα εξηγήσει πώς να χρησιμοποιήσετε το grep στο Linux και θα συζητήσει τις διαφορετικές εφαρμογές του.
Πώς να χρησιμοποιήσετε την εντολή Grep στο Linux
Η βασική λειτουργία της εντολής grep είναι η αναζήτηση ενός συγκεκριμένου κειμένου μέσα σε ένα αρχείο. Μπορείτε να το κάνετε εισάγοντας την ακόλουθη εντολή:
λαβή 'text_to_search' file.txt
Αντικαταστήστε το 'text_to_search' με το κείμενο που θέλετε να αναζητήσετε και το 'file.txt' με το αρχείο προορισμού. Για παράδειγμα, για να βρούμε τη συμβολοσειρά 'Hello' στο αρχείο με το όνομα file.txt, θα χρησιμοποιήσουμε:
λαβή 'Γειά σου' file.txt
Με την εισαγωγή της παραπάνω εντολής, το grep θα σαρώσει το αρχείο Intro.txt για 'Hello'. Ως αποτέλεσμα, εμφανίζει την έξοδο ολόκληρης της γραμμής ή των γραμμών που περιέχουν το κείμενο-στόχο.
Εάν το αρχείο προορισμού βρίσκεται σε διαδρομή διαφορετική από τον τρέχοντα κατάλογο σας, αναφέρετε τη διαδρομή μαζί με το όνομα του αρχείου. Για παράδειγμα:
λαβή 'Γειά σου' ~ / Εγγραφα / file.txt
Εδώ, η ένδειξη '~' αντιπροσωπεύει τον αρχικό σας κατάλογο. Το παραπάνω παράδειγμα δείχνει πώς μπορείτε να αναζητήσετε ένα κομμάτι κειμένου σε ένα μόνο αρχείο. Ωστόσο, εάν θέλετε να κάνετε την ίδια αναζήτηση σε πολλά αρχεία ταυτόχρονα, αναφέρετέ τα στη συνέχεια σε μία εντολή grep:
λαβή 'Γειά σου' file.txt Linux_info.txt Κωδικός πρόσβασης.txt
Σε περίπτωση που δεν είστε σίγουροι για τα πεζά ή πεζά γράμματα της συμβολοσειράς σας, πραγματοποιήστε αναζήτηση χωρίς διάκριση πεζών-κεφαλαίων χρησιμοποιώντας την επιλογή i:
λαβή -Εγώ 'Γειά σου' Intro.txt
Αν και η συμβολοσειρά που εισαγάγαμε δεν ήταν η ακριβής αντιστοίχιση, λάβαμε ακριβή αποτελέσματα μέσω της αναζήτησης χωρίς διάκριση πεζών-κεφαλαίων. Σε περίπτωση που θέλετε να αντιστρέψετε τις αλλαγές και να ελέγξετε αρχεία που δεν περιέχουν το συγκεκριμένο μοτίβο, χρησιμοποιήστε την επιλογή v:
λαβή -σε 'Γειά σου' file.txt Linux_info.txt Κωδικός πρόσβασης.txt
Επιπλέον, εάν θέλετε να εμφανίσετε τις γραμμές που ξεκινούν με μια συγκεκριμένη λέξη, χρησιμοποιήστε το σύμβολο «^». Χρησιμεύει ως άγκυρα που καθορίζει την αρχή της γραμμής.
λαβή '^ Γεια σου' file.txt
Οι παραπάνω εντολές θα είναι χρήσιμες μόνο όταν γνωρίζετε ποιο αρχείο να αναζητήσετε. Σε αυτήν την περίπτωση, μπορείτε να αναζητήσετε αναδρομικά τη συμβολοσειρά μέσα σε ολόκληρο τον κατάλογο χρησιμοποιώντας την επιλογή r. Για παράδειγμα, ας αναζητήσουμε 'Hello' στον κατάλογο Documents:
λαβή -r 'Γειά σου' ~ / Εγγραφα
Επιπλέον, μπορείτε επίσης να μετρήσετε πόσες φορές εμφανίζεται η συμβολοσειρά εισόδου σε ένα αρχείο μέσω της επιλογής c:
λαβή -ντο 'Γειά σου' Intro.txt
Ομοίως, μπορείτε να εμφανίσετε τους αριθμούς των γραμμών μαζί με τις αντιστοιχισμένες γραμμές με την επιλογή n:
λαβή -n 'Γειά σου' Intro.txt
Γρήγορη ανακεφαλαίωση
Οι χρήστες συχνά θυμούνται ότι ένα αρχείο περιείχε ένα κομμάτι κειμένου, αλλά ξεχνούν το όνομα του αρχείου, κάτι που μπορεί να τους φέρει σε μεγάλο πρόβλημα. Ως εκ τούτου, αυτό το σεμινάριο αφορούσε τη χρήση της εντολής grep για την αναζήτηση κειμένου στα περιεχόμενα ενός αρχείου. Επιπλέον, χρησιμοποιήσαμε διαφορετικά παραδείγματα για να δείξουμε πώς μπορείτε να τροποποιήσετε τη λειτουργία της εντολής grep με μερικές επιλογές. Μπορείτε να πειραματιστείτε συνδυάζοντας πολλές επιλογές για να μάθετε τι ταιριάζει καλύτερα ανάλογα με την περίπτωση χρήσης σας.