Διαφορά μεταξύ Egrep και Fgrep Διαφορά μεταξύ

Anonim

Egrep vs Fgrep

Egrep και fgrep είναι και οι δύο μέρος της grep οικογένειας εντολών. Τόσο το egrep όσο και το fgrep χρησιμοποιούνται στο Linux ως εντολές χρηστών για να διευκολύνουν την αναζήτηση για αναζήτηση σε αρχεία απλού κειμένου σε χιλιάδες γραμμές. Και οι δύο εντολές είναι βοηθητικά προγράμματα αναζήτησης με βάση το DOS και αρχεία αναζήτησης, καταλόγους και δέντρα καταλόγου για ένα συγκεκριμένο κείμενο ή λέξεις.

Το Grep είναι η εντολή βάσης τόσο για το egrep όσο και για το fgrep. "Grep" σημαίνει "παγκόσμια εκτύπωση τυπικής έκφρασης. "Το Grep υποστηρίζει εντολές κανονικής έκφρασης στην αναζήτηση λέξεων και όρων.

Το Egrep είναι μια επέκταση της εντολής grep, μια εντολή χρήστη για την αναζήτηση μιας συμβολοσειράς χαρακτήρων σε γραμμές και πολλαπλών μοτίβων μέσα σε ένα αρχείο κειμένου. Επίσης, γνωστό ως εκτεταμένο grep, ψάχνει για ένα από τα πιο σχεδιαζόμενα επιχειρήματα. Το Egrep χρησιμοποιείται όταν το έγγραφο χαρακτηρίζεται ως "εκτεταμένη έκφραση. "Χρησιμοποιώντας αυτή την εντολή, ειδικοί χαρακτήρες όπως +,?,!, και άλλοι χαρακτήρες και χρήσιμες ακολουθίες θα αποδώσουν αποτελέσματα αντί να εμφανίσουν ένα συντακτικό σφάλμα. Αυτό συμβαίνει επειδή η εντολή egrep τις ερμηνεύει ως μέρος μιας κανονικής έκφρασης.

Οι εκφράσεις όπως το σύμβολο συν, το ερωτηματικό, η κάθετη γραμμή και οι παρενθέσεις χρησιμοποιούνται συχνά ως χειριστές που βοηθούν στον προσδιορισμό των αποτελεσμάτων. Η έκφραση τοποθετείται μετά τον όρο αναζήτησης ή την κανονική έκφραση. Το παρακάτω περιγράφει τη λειτουργία των χειριστών:

Η κανονική έκφραση και το σύμβολο συν παρέχουν ένα ή περισσότερα αποτελέσματα της κανονικής έκφρασης.

Η κανονική έκφραση πριν από ένα ερωτηματικό δίνει αντιστοιχία μηδέν ή μία αντιστοιχία του δεδομένου όρου αναζήτησης.

Μια κάθετη γραμμή χρησιμοποιείται για να διαχωρίσει πολλές κανονικές εκφράσεις ή όρους αναζήτησης.

Οι παρενθέσεις χρησιμοποιούνται για να περικλείουν και να ομαδοποιούν μια κανονική έκφραση ή λέξεις.

Στην κωδικοποίηση αυτής της εντολής "d" στο Linux, εκφράζεται ως "grep-e";; egrep ή egrep plus για τη λέξη ή τους όρους αναζήτησης στο αρχείο. Δεν υπάρχει όριο στον αριθμό των λέξεων αναζήτησης που μπορούν να συμπεριληφθούν.

Εν τω μεταξύ, το fgrep είναι μια επέκταση του egrep. Στο Linux, ονομάζεται "grep-f" και είναι επίσης γνωστός ως grep σταθερής σειράς. Είναι παρόμοιο με το grep, καθώς δεν αναγνωρίζει ή ερμηνεύει κανονικές ή οποιεσδήποτε ειδικές εκφράσεις ή χαρακτήρες. Δεδομένου ότι δεν κατανοεί τις εκτεταμένες δυνατότητες της κανονικής έκφρασης, παρακάμπτει αυτούς τους χαρακτήρες κατά τη διάρκεια μιας αναζήτησης. Επιστρέφει μόνο λέξεις και όροι αγώνων και τίποτα άλλο.

Το Fgrep ερμηνεύει τα έγγραφα ως μια λίστα σταθερών συμβολοσειρών. Η διαδικασία αναζήτησης είναι πολύ γρήγορη σε σύγκριση με τις άλλες εντολές επειδή χρησιμοποιεί τον αλγόριθμο αντιστοίχισης συμβολοσειρών Aho-Corasick.

Περίληψη:

1. Τόσο το egrep όσο και το fgrep προέρχονται από τη βασική εντολή grep. Το "egrep" αντιπροσωπεύει το "extended grep" ενώ το fgrep σημαίνει "grep σταθερής αλυσίδας."

2. Μια εντολή egrep χρησιμοποιείται για την αναζήτηση πολλαπλών μοτίβων μέσα σε ένα αρχείο ή σε άλλο είδος χώρου αποθήκευσης δεδομένων, ενώ το frgrep χρησιμοποιείται για την αναζήτηση συμβολοσειρών.

3. Ο όρος "egrep" εκφράζεται συνήθως ως "grep-e" ενώ το "fgrep" κωδικοποιείται ως "grep-f. "

4. Η εντολή egrep επιτρέπει τη χρήση εκτεταμένων κανονικών εκφράσεων, ενώ η grep αναζητά μόνο την αντίστοιχη λέξη ή όρο που ο χρήστης καθορίζει στην εντολή. Το frep δεν αναγνωρίζει ή δεν καταλαβαίνει την κανονική ή εκτεταμένη κανονική έκφραση.

5. Σε σύγκριση με τις άλλες εντολές αναζήτησης, η διαδικασία αναζήτησης για το fgrep είναι πολύ γρήγορη, δεδομένου ότι αφορά μόνο την παρεχόμενη λέξη αναζήτησης.

6. Η εντολή egrep συνήθως χρησιμοποιεί τους χειριστές για να δώσει μια πιο προοδευτική ή ειδική έρευνα αναζήτησης. Ένα σύμβολο συν και το ερωτηματικό ασχολούνται με απλές, κανονικές εκφράσεις ή όρους αναζήτησης. Από την άλλη πλευρά, οι κάθετες ράβδοι και οι παρενθέσεις χρησιμοποιούνται για πολλαπλές, κανονικές εκφράσεις με αντίθετες λειτουργίες. Η κατακόρυφη γραμμή χωρίζει τις εκφράσεις ενώ ο τελεστής παρενθέσεων τις ομαδοποιεί.