Αναζητήστε συμβολοσειρές ή μοτίβα σε απλό κείμενο από το τερματικό

σχετικά με την αναζήτηση συμβολοσειρών ή μοτίβων

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

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

Αναζητήστε συμβολοσειρές ή μοτίβα από το τερματικό

Εντολή Grep

Το Grep είναι αρκτικόλεξο για Παγκόσμια τυπική εκτύπωση έκφρασης. Αυτό είναι ένα ισχυρό εργαλείο γραμμής εντολών που είναι χρήσιμο όταν αναζητάτε μια συγκεκριμένη συμβολοσειρά ή μοτίβο σε ένα αρχείο. Με grep θα είμαστε σε θέση να χρησιμοποιήσουμε ένα ευρύ φάσμα λειτουργιών, όπως αυτές που μας εξήγησε ένας συνάδελφος σε αυτό το ιστολόγιο πριν από λίγο.

Η σύνταξη για τη χρήση της εντολής grep είναι πολύ απλή:

grep PATRON [RUTA AL ARCHIVO]

Για παράδειγμα, για αναζήτηση της συμβολοσειράς 'Ubuntu"σε ένα αρχείο που σε αυτό το παράδειγμα θα καλέσουμε text.txt, χωρίς να λαμβάνουμε υπόψη τη διάκριση μεταξύ κεφαλαίων και πεζών, σε ένα τερματικό (Ctrl + Alt + T) θα πρέπει να εκτελέσουμε μόνο την εντολή:

grep -i κείμενο

grep -i Ubuntu texto.txt

Εντολή sed

Η δίψα είναι σύντομη Επεξεργαστής ροής. Είναι ένα άλλο χρήσιμο εργαλείο για το τερματικό με το οποίο μπορούμε να χειριστούμε κείμενο σε ένα αρχείο. Sed αναζητά, φιλτράρει και αντικαθιστά συμβολοσειρές σε ένα δεδομένο αρχείο.

Η εντολή sed εκτυπώνει από προεπιλογή την έξοδο STDOUT (Τυπική έξοδος). Αυτό σημαίνει ότι το αποτέλεσμα της εκτέλεσης εκτυπώνεται στο τερματικό αντί να αποθηκεύεται σε ένα αρχείο.

Η εντολή Sed μπορεί να χρησιμοποιηθεί ως εξής:

sed -OPCIONES COMANDO [RUTA AL ARCHIVO]

Για παράδειγμα, για την αντικατάσταση όλων των εμφανίσεων του 'Linux"σε κείμενο από"Linux", η εντολή που πρέπει να χρησιμοποιήσετε είναι η ακόλουθη:

Εντολή sed

sed 's/Linux/GnuLinux/g' texto.txt

Αν αυτό που ψάχνουμε είναι ανακατευθύνετε την έξοδο σε ένα αρχείο αντί να το εκτυπώσετε στο τερματικό, θα χρησιμοποιήσουμε το σύμβολο ανακατεύθυνσης ως εξής:

sed 's/Linux/GnuLinux/g' texto.txt > salida.txt

Η έξοδος της εντολής αποθηκεύεται στο αρχείο έξοδος.txt αντί να εκτυπωθεί στην οθόνη.

έξοδος εντολών sed

Για να δείτε περισσότερες επιλογές, μπορείτε συμβουλευτείτε τις ανθρώπινες σελίδες:

άντρας διψασμένος

man sed

Ακ

Το Ack είναι ένα εργαλείο γρήγορης γραμμής εντολών γραμμένο στο Perl. Θεωρείται φιλικό υποκατάστατο του grep, το οποίο παράγει επίσης αποτελέσματα με έναν οπτικά ελκυστικό τρόπο.

να εγκαταστήστε το ack στο σύστημά μας θα πρέπει να εκτελέσουμε στο τερματικό (Ctrl + Alt + T):

εγκαταστήστε το ack

sudo apt install ack

Η εντολή Η Ack αναζητά το αρχείο ή τον κατάλογο για τις γραμμές που περιέχουν την αντιστοίχιση για τα κριτήρια αναζήτησης. Στη συνέχεια, επισημάνετε την αντίστοιχη συμβολοσειρά. Αυτό το εργαλείο έχει τη δυνατότητα να διακρίνει τα αρχεία με βάση τις επεκτάσεις τους.

Η σύνταξη της εντολής Ack θα ήταν η ακόλουθη

ack [OPCIONES] PATRÓN [RUTA AL ARCHIVO]

Για παράδειγμα, για αναζήτηση του όρου Linux σε ένα αρχείο, θα πρέπει να εκτελέσουμε:

αναζήτηση εντολής ack

ack Linux texto.txt

Το εργαλείο αναζήτησης είναι αρκετά έξυπνο και Εάν ο χρήστης δεν παρέχει αρχεία ή καταλόγους, αναζητά τον τρέχοντα κατάλογο και τους υποκαταλόγους για το μοτίβο αναζήτησης.

Στο ακόλουθο παράδειγμα, δεν παρέχεται αρχείο ή κατάλογος. Το Ack εντοπίζει αυτόματα το διαθέσιμο αρχείο στον κατάλογο και αναζητά το αντίστοιχο μοτίβο:

αναζήτηση ack χωρίς αρχείο

ack Linux

Ρίπγκρεπ

Ρίπγκρεπ είναι ένα βοηθητικό πρόγραμμα πολλαπλών πλατφορμών για αναζήτηση τυπικών μοτίβων έκφρασης. Είναι ταχύτερο από όλα τα εργαλεία αναζήτησης που αναφέρονται παραπάνω και αναζητά καταλόγους αναδρομικά για αντιστοίχιση μοτίβων. Σας επιτρέπει επίσης να αναζητήσετε συγκεκριμένους τύπους αρχείων. Από προεπιλογή, το ripgrep θα παραλείψει δυαδικά αρχεία και κρυφά αρχεία / καταλόγους.

να εγκαταστήστε το ripgrep στο σύστημα, πρέπει απλώς να εκτελέσετε την ακόλουθη εντολή στο τερματικό (Ctrl + Alt + T):

εγκατάσταση ripgrep

sudo apt install ripgrep

Η σύνταξη για τη χρήση του ripgrep είναι αρκετά απλή:

rg [OPCIONES] PATRÓN [RUTA AL ARCHIVO]

Αν θέλαμε να αναζητήσουμε την αλυσίδα »Linux"σε αρχεία που βρίσκονται στον τρέχοντα κατάλογο, θα πρέπει να εκτελέσουμε μόνο την εντολή:

ο άνθρωπος rg linux

rg Linux

Για να δείτε περισσότερες επιλογές, οι χρήστες μπορούν να χρησιμοποιήσουν ανθρώπινες σελίδες:

άντρας rg

man rg

SilverSearcher

να εγκαταστήστε αυτό το εργαλείο, στο Ubuntu θα πρέπει να ανοίξουμε μόνο ένα τερματικό (Ctrl + Alt + T) και να γράψουμε την εντολή:

εγκατάσταση silversearcher-ag

sudo apt install silversearcher-ag

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

ag OPCIONES PATRÓN_DE_BÚSQUEDA /ruta/al/archivo

Για παράδειγμα, για αναζήτησηLinuxστο αρχείο text.txt, θα πρέπει να γράψουμε στο τερματικό (Ctrl + Alt + T):

αναζήτηση με silversearcher

ag Linux texto.txt

Για να δείτε περισσότερες επιλογές μπορούμε να συμβουλευτούμε το σελίδες man:

άντρας silversearcher

man ag

Αυτά είναι μόνο μερικά από τα πιο συχνά χρησιμοποιούμενα εργαλεία γραμμής εντολών για αναζήτηση, φιλτράρισμα και χειρισμό κειμένου στο Linux.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.