Πώς να χρησιμοποιήσετε τις εντολές FINDSTR και Select-String στα Windows 11/10

Έχετε ακούσει ποτέ για το FINDSTR και το Select-String(Select-String) ; Το Select-String είναι ένα cmdlet που χρησιμοποιείται για την αναζήτηση κειμένου και μοτίβων σε συμβολοσειρές εισόδου και αρχεία. Είναι παρόμοιο με το grep στο Linux & το FINDSTR στα Windows . Σε αυτόν τον οδηγό, βλέπουμε τι και πώς να χρησιμοποιήσετε τις εντολές FINDSTR και Select-String στα Windows 11/10.

Πώς να χρησιμοποιήσετε τις εντολές FindSTR και Select-String

ΕΝΑ 

Τι είναι το FINDSTR και πώς να χρησιμοποιήσετε το FINDSTR

Το FINDSTR(FINDSTR) είναι μια εντολή που χρησιμοποιείται για την εύρεση συγκεκριμένου κειμένου σε αρχεία στα Windows . Η εύρεση(Find) συμβολοσειράς με συντομία έγινε FINDSTR . Χρησιμοποιείται επίσης για την εύρεση αρχείων με συγκεκριμένο κείμενο. Υπάρχουν διάφορες εντολές FINDSTR για να κάνετε διάφορες λειτουργίες. (FINDSTR)Κυκλοφόρησε για πρώτη φορά με το Windows 2000 (Windows 2000) Resource Kit με το όνομα qgrep . Είναι ένα ενσωματωμένο εργαλείο στα Windows και το αρχείο του είναι διαθέσιμο σε μορφή .exe. Το FINDSTR(FINDSTR) δεν αναζητά null byte όπως κενά σε μορφή Unicode .

Υπάρχουν ορισμένοι βασικοί κανόνες για τη χρήση της εντολής findstr στη γραμμή εντολών(Command Prompt) ή σε άλλους διερμηνείς γραμμής εντολών(Command Line Interpreters) , οι οποίοι έχουν αναπτυχθεί από τη Microsoft(Microsoft) . Αυτοί είναι:

  • Κάθε εντολή FINDSTR πρέπει να περιέχει μια συμβολοσειρά ακολουθούμενη από ένα όνομα αρχείου.
  • Μπορείτε να χρησιμοποιήσετε κυριολεκτικούς χαρακτήρες και μεταχαρακτήρες στις εντολές FINDSTR . Οι κυριολεκτικοί χαρακτήρες δεν έχουν κάποια ιδιαίτερη σημασία στη σύνταξη. Τα γράμματα και οι αριθμοί ονομάζονται κυριολεκτικοί χαρακτήρες. Οι μετα-χαρακτήρες είναι σύμβολα που έχουν συγκεκριμένη σημασία για τον καθένα. Ακολουθούν οι αποδεκτοί μεταχαρακτήρες στη σύνταξη και οι σημασίες τους.

Meta-character

Value

.

Wildcard – Any character

*

Repeat – Zero or more occurrences of the previous character or class.

^

Beginning line position – Beginning of the line.

$

Ending line position – End of the line.

[class]

Character class – Any one character in a set.

[^class]

Inverse class – Any one character not in a set.

[x-y]

Range – Any characters within the specified range.

\x

Escape – Literal use of a meta-character.

\<string

Beginning word position – Beginning of the word.

string\>

Ending word position – End of the word.

  • Θα πρέπει να δημιουργήσετε ένα αρχείο κειμένου με κριτήρια αναζήτησης σε ξεχωριστή γραμμή όταν θέλετε να αναζητήσετε πολλές συμβολοσειρές.
  • Χρησιμοποιήστε(Use) κενά μεταξύ των συμβολοσειρών για αναζήτηση πολλαπλών συμβολοσειρών σε μία εντολή εκτός από τη σύνταξη με /c.

Παράμετροι και η σημασία τους στη σύνταξη findstr

Παράμετρος

Περιγραφή

/σι

Ταιριάζει(Matches) με το μοτίβο κειμένου εάν βρίσκεται στην αρχή μιας γραμμής.

/μι

Ταιριάζει(Matches) με το μοτίβο κειμένου αν βρίσκεται στο τέλος μιας γραμμής.

/μεγάλο

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

/r

Επεξεργάζεται τις συμβολοσειρές αναζήτησης ως κανονικές εκφράσεις. Αυτή είναι η προεπιλεγμένη ρύθμιση.

/μικρό

Πραγματοποιεί αναζήτηση(Searches) στον τρέχοντα κατάλογο και σε όλους τους υποκαταλόγους.

/Εγώ

Αγνοεί την περίπτωση των χαρακτήρων κατά την αναζήτηση της συμβολοσειράς.

Εκτυπώνει γραμμές που ταιριάζουν ακριβώς.

/v

Εκτυπώνει μόνο γραμμές που δεν περιέχουν αντιστοιχία.

/n

Εκτυπώνει τον αριθμό γραμμής κάθε γραμμής που ταιριάζει.

Εκτυπώνει μόνο το όνομα του αρχείου εάν ένα αρχείο περιέχει ένα ταίριασμα.

/ο

Εκτυπώνει τη μετατόπιση χαρακτήρων πριν από κάθε αντίστοιχη γραμμή.

Παρακάμπτει αρχεία με μη εκτυπώσιμους χαρακτήρες.

/εκτός[line]

Δεν παρακάμπτει αρχεία που έχουν το σύνολο χαρακτηριστικών εκτός σύνδεσης.

/f:<αρχείο>

Λαμβάνει μια λίστα αρχείων από το καθορισμένο αρχείο.

/c:<string>

Χρησιμοποιεί το καθορισμένο κείμενο ως κυριολεκτική συμβολοσειρά αναζήτησης.

/g:<αρχείο>

Λαμβάνει συμβολοσειρές αναζήτησης από το καθορισμένο αρχείο.

/d:<dirlist>

Πραγματοποιεί αναζήτηση(Searches) στην καθορισμένη λίστα καταλόγων. Κάθε κατάλογος πρέπει να διαχωρίζεται με ένα ερωτηματικό (;), για παράδειγμα  dir1;dir2;dir3.

/a:<colorattribute>

Καθορίζει χαρακτηριστικά χρώματος με δύο δεκαεξαδικά ψηφία. Πληκτρολογήστε  Â για πρόσθετες πληροφορίες.color
/?

<string>

Καθορίζει το κείμενο για αναζήτηση στο  όνομα αρχείου(filename) . Απαιτείται.

<span “>[\<drive>:][<διαδρομή>]<όνομα αρχείου>[…]

Καθορίζει τη θέση και το αρχείο ή τα αρχεία προς αναζήτηση. Απαιτείται τουλάχιστον ένα όνομα αρχείου.

/?

Εμφανίζει τη Βοήθεια στη γραμμή εντολών.

Χρήση εντολών findstr

1] Για να αναζητήσετε τη λέξη microsoft ή windows στο αρχείο xy, θα πρέπει να χρησιμοποιήσετε:

findstr microsoft windows x.y

2] Για να αναζητήσετε τη λέξη microsoft windows στο αρχείο xy, θα πρέπει να χρησιμοποιήσετε:

findstr /c:"microsoft windows" x.y

Στην παραπάνω εντολή /cχρησιμοποιείται για την αναζήτηση του καθορισμένου κειμένου “microsoft windows’ στο αρχείο.

3] Εάν θέλετε να βρείτε τις εμφανίσεις της λέξης Microsoft με κεφαλαίο M στο αρχείο κειμένου twc.txt, θα πρέπει να χρησιμοποιήσετε:

findstr Microsoft twc.txt

4] Εάν θέλετε να αναζητήσετε μια συγκεκριμένη λέξη Microsoft σε έναν κατάλογο και τους υποκαταλόγους του χωρίς να δίνετε σημασία σε περιπτώσεις τύπων, χρησιμοποιήστε:

findstr /s /i Microsoft *.*

Στην παραπάνω σύνταξη, /sχρησιμοποιείται για την αναζήτηση στον τρέχοντα κατάλογο και στους υποκαταλόγους του. /iχρησιμοποιείται για να αγνοήσει τον τύπο πεζών-κεφαλαίων (κεφαλαίο M) στη συμβολοσειρά Microsoft .

5] Εάν θέλετε να βρείτε γραμμές που ξεκινούν με To με πολλά κενά πριν από τη λέξη και θέλετε να εμφανίσετε τον αριθμό γραμμής όπου εμφανίστηκαν οι συμβολοσειρές, χρησιμοποιήστε:

findstr /b /n /r /c:^ *To *.bas

6] Εάν θέλετε να αναζητήσετε πολλές συμβολοσειρές σε πολλά αρχεία με κριτήρια αναζήτησης στο stringlist.txt και λίστα αρχείων στο filelist.txt και θέλετε να δείτε τα αποτελέσματα που είναι αποθηκευμένα στο αρχείο result.out, χρησιμοποιήστε:

findstr /g:stringlist.txt /f:filelist.txt > results.out

7] Εάν θέλετε να βρείτε τα αρχεία που περιέχουν τη λέξη thewindowsclub σε έναν συγκεκριμένο κατάλογο και τους υποκαταλόγους του, χρησιμοποιήστε:

findstr /s /i /m \<thewindowsclub\> *.*

8] Εάν θέλετε να βρείτε αρχεία που περιέχουν το thewindowsclub και άλλες λέξεις που ξεκινούν με παρόμοια διατριβή, θερμόμετρο κ.λπ., χρησιμοποιήστε:

findstr /s /i /m \<the.* *.*

Αυτοί είναι οι τρόποι με τους οποίους μπορείτε να χρησιμοποιήσετε τις εντολές findstr σε διερμηνείς γραμμής εντολών όπως η γραμμή εντολών(Command Prompt) κ.λπ. Πρέπει να κατανοήσετε κάθε παράμετρο και τη λειτουργία της καθώς και τους μεταχαρακτήρες και τη σημασία τους για να γράφετε σύνταξη και να χρησιμοποιείτε τακτικά την εντολή findstr.

Τι είναι το Select-String και οι παράμετροί του

Φανταστείτε(Imagine) ότι γράφετε κομμάτια κώδικα στο PowerShell και χάσατε το κομμάτι ορισμένων συμβολοσειρών και κειμένου σε αυτό το αρχείο PowerShell . Πρέπει να το βρείτε σε πολλές χιλιάδες γραμμές κώδικα μέσα σε χιλιάδες συμβολοσειρές και λέξεις. Έρχεται η εντολή Select-String που σας επιτρέπει να αναζητήσετε συμβολοσειρές και κείμενο σε αυτά τα αρχεία εισόδου PowerShell . Είναι παρόμοιο με το grep στο Linux .

Το Select-String(Select-String) είναι ένα cmdlet που χρησιμοποιείται για την αναζήτηση κειμένου και μοτίβων σε συμβολοσειρές και αρχεία εισαγωγής. Είναι παρόμοιο με το grep στο Linux και το FINDSTR στα Windows . Όταν χρησιμοποιείται Select-String για αναζήτηση κάποιου κειμένου, βρίσκει την πρώτη αντιστοίχιση σε κάθε γραμμή και εμφανίζει το όνομα του αρχείου, τον αριθμό γραμμής και ολόκληρη τη γραμμή όπου συνέβη η αντιστοίχιση. Μπορεί να χρησιμοποιηθεί για την εύρεση πολλαπλών αντιστοιχίσεων ανά γραμμή ή για την εμφάνιση κειμένου πριν ή μετά τον αγώνα ή για να λάβετε αποτελέσματα σε εκφράσεις Boole, όπως True ή False . Μπορείτε επίσης να το χρησιμοποιήσετε για να εμφανίσετε όλο το κείμενο εκτός από την αντιστοίχιση της έκφρασης που χρησιμοποιήστε στην εντολή. Οι WildCards που χρησιμοποιείτε στο FINDSTRμπορεί να χρησιμοποιηθεί και στο Select-String . Επίσης, το Select-String(Select-String) λειτουργεί με διαφορετικές κωδικοποιήσεις αρχείων, όπως ASCII , Unicode , κ.λπ. Χρησιμοποιεί Byte-Order-Mark ( BOM ) για να καθορίσει την κωδικοποίηση του αρχείου. Εάν το BOM λείπει στο αρχείο, το Select-String θα υποθέσει το αρχείο ως UTF8 .

Παράμετροι Select-String

Η Microsoft(Microsoft) οραματίστηκε και ανέπτυξε τις παρακάτω παραμέτρους που θα χρησιμοποιηθούν στη σύνταξη.

-AllMatches

Χρησιμοποιείται για την αναζήτηση όλων των αντιστοιχιών σε μια γραμμή σε αντίθεση με την πρώτη αντιστοίχιση στη γραμμή που κάνει συνήθως το Select-Sting .

-CaseSensitive

Αντιπροσωπεύει ότι ο αγώνας είναι διάκριση πεζών-κεφαλαίων. Από προεπιλογή, το Select-String(Select-String) δεν κάνει διάκριση πεζών-κεφαλαίων.

-Context

Χρησιμοποιείται για την καταγραφή του καθορισμένου αριθμού γραμμών που εισάγετε πριν και μετά τη γραμμή του αγώνα. Εάν εισάγετε 1, καταγράφει μία γραμμή πριν και μετά τον αγώνα.

-Culture

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

-Encoding

Χρησιμοποιείται για τον καθορισμό της μορφής κωδικοποίησης του κειμένου σε αρχεία όπως ASCII , UTF8 , UTF7 , Unicode κ.λπ.

-Exclude

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

-Include

Αυτή η παράμετρος χρησιμοποιείται για να συμπεριλάβει συγκεκριμένο κείμενο στο αρχείο.

-InputObject

Χρησιμοποιείται για τον καθορισμό του κειμένου προς αναζήτηση.

-List

Χρησιμοποιείται για την ανάκτηση της λίστας αρχείων που ταιριάζουν με το κείμενο.

-LiteralPath

Χρησιμοποιείται για τον καθορισμό της διαδρομής για την αναζήτηση.

-NoEmphasis

Γενικά, το Select-String(Select-String) επισημαίνει την αντιστοίχιση στο αρχείο. Αυτή η παράμετρος χρησιμοποιείται για την αποφυγή επισήμανσης.

-NotMatch

Χρησιμοποιείται για την εύρεση του κειμένου που δεν ταιριάζει με το καθορισμένο μοτίβο.

-Path

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

-Pattern

Η παράμετρος χρησιμοποιείται για την εύρεση της αντιστοιχίας σε κάθε γραμμή ως μοτίβο.

-Quiet

Αυτή η παράμετρος χρησιμοποιείται για τη λήψη της εξόδου σε τιμές Boolean όπως True ή False .

-Raw

Χρησιμοποιείται για να βλέπει μόνο αντικείμενα που ταιριάζουν και όχι πληροφορίες αντιστοίχισης(Match) .

-SimpleMatch

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

Διαφορά μεταξύ FINDSTR και Select-String

Το FINDSTR(FINDSTR) είναι ένα εκτελέσιμο αρχείο πριν από την εποχή του PowerShell που χρησιμοποιείται για την αναζήτηση κειμένου και συμβολοσειρών σε αρχεία. Το Select-String(Select-String) είναι ένα cmdlet PowerShell που χρησιμοποιείται για την αναζήτηση κειμένου και μοτίβων σε αρχεία. Σε σύγκριση με το FINDSTR , το Select-String(Select-String) είναι το πιο ισχυρό και πολύπλοκο cmdlet που εμφανίζει πολλές πληροφορίες σχετικά με τον αγώνα.

Τι είναι το ισοδύναμο PowerShell του grep;(PowerShell)

Το Select-String είναι το ισοδύναμο PowerShell του grep που είναι διαθέσιμο στα (PowerShell)Windows . Λειτουργεί με τον ίδιο τρόπο που λειτουργεί το grep και δίνει λεπτομερείς πληροφορίες σχετικά με την αντιστοίχιση σύμφωνα με τις παραμέτρους που χρησιμοποιούμε στη σύνταξη.

Λειτουργεί το FINDSTR σε αρχεία Word;

Ναι, το FINDSTR λειτουργεί σε αρχεία Word . Αλλά δεν μπορεί να εμφανίσει την εύρεση των αντιστοιχιών ακόμα κι αν οι συμβολοσειρές που εισαγάγατε υπάρχουν στο αρχείο. Μπορεί να σας δώσει αποτελέσματα σε δυαδικά αρχεία σε μορφές .doc αλλά όχι σε μορφές .docx για κάποιους άγνωστους τεχνικούς λόγους.

Σχετικό Διαβάστε(Related Read) : Πώς να ελέγξετε την έκδοση PowerShell στα Windows.(How to check the PowerShell version in Windows.)



About the author

Είμαι επιστήμονας πληροφορικής με πάνω από 10 χρόνια εμπειρίας στην ανάπτυξη λογισμικού και την ασφάλεια. Έχω έντονο ενδιαφέρον για τα παιχνίδια Firefox, Chrome και Xbox. Συγκεκριμένα, με ενδιαφέρει ιδιαίτερα πώς να βεβαιωθώ ότι ο κώδικάς μου είναι ασφαλής και αποτελεσματικός.



Related posts