Findstr: Exemple și sfaturi despre utilizarea acestui instrument CMD pentru Windows


Pentru cei neinițiați, un instrument de căutare a modelelor precum findstr poate părea inutil. Dar atunci când aveți de-a face cu fișiere jurnal generate de sistem sau cu ieșiri din linia de comandă care conțin sute de linii de text, findstr este doar instrumentul de care aveți nevoie.

Utilizatorii unui sistem de operare Linux ar fi deja familiarizați cu utilitatea incredibilă a comenzii Grep, iar findstr îndeplinește un rol similar în Microsoft Windows. Îl puteți combina cu alte comenzi folosind conducte sau pur și simplu îl puteți rula direct pentru a analiza mai multe fișiere text. Să vedem cum funcționează findstr cu câteva exemple.

Utilizarea comenzii Findstr

Sintaxa de bază este simplă – findstr <șir>, unde <șir>este modelul de căutat, iar este adresa fișierului în care să căutați. Deschideți linia de comandă și încercați. .

findstr SFC example1.txt

Această comandă va găsi și va afișa toate liniile care conțin șirul de căutare SFC. Rețineți că, în mod implicit, findstr ține seama de majuscule și minuscule, așa că orice mențiuni despre SFC nu vor fi potrivite.

Parametri

Puteți personaliza și mai mult modul în care funcționează findstr, incluzând parametri opționali. Comutatoare precum /B sau /I modifică comportamentul findstr, impunând condiții suplimentare pentru căutare. De exemplu:

findstr /I SFC example1.txt

Includerea /I ca parametru face ca căutarea să nu țină seama de majuscule și minuscule, permițând ca toate mențiunile termenului să se potrivească, indiferent de scrierea cu majuscule. Puteți găsi lista cu toți parametrii findstr în documente oficiale Microsoft.

Modele opționale

Parametrii nu sunt singura modalitate prin care puteți personaliza findstr. Introducerea între ghilimele, de exemplu, vă permite să specificați mai multe modele, oferindu-vă o potrivire dacă se găsește oricare dintre șirurile de text.

fdstr „SFC DISM” example1.txt

Cele mai sus vor returna linii care conțin oricare dintre termeni. Acest lucru îl face util atunci când căutați o mențiune pentru un articol cu ​​nume diferite.

Expresii regulate

Findstr este capabil să caute în mai multe fișiere. Schimbarea într-o expresie regulată face ca comanda să caute modelul specificat în toate fișierele care se potrivesc..

findstr SFC *.txt

Folosirea caracterului wildcard se potrivește regex cu toate fișierele text din directorul curent și subdirectoarele acestuia. Rezultatele sunt, de asemenea, separate după nume de fișiere, permițându-vă să vedeți ce linie provine din fiecare fișier.

Tevi

Ca majoritatea comenzilor cmd, findstr poate fi folosit și la ieșirea altor comenzi. Doar adăugați o conductă după terminarea comenzii țintă și invocați findstr fără .

dir | findstr .txt

Acest lucru rulează o căutare findstr în rezultatul comenzii dir, returnând lista de fișiere care se termină cu .txt. Desigur, acest exemplu este inutil în practică, deoarece dir poate localiza deja fișiere de același tip cu o expresie regulată.

Se poate parcurge, de asemenea, traseul mai lung de redirecționarea rezultatului către un fișier text și apoi se poate folosi findstr pe fișierul text, dar este mai ușor să tăiați intermediarul.

Aplicații ale Findstr în Windows

Utilizările evidente ale findstr sunt ușor evidente numai din sintaxă. Puteți căuta fișiere text cu un anumit șir de text sau puteți vedea dacă un anumit șir este conținut într-un fișier.

Acest lucru, deși este util din punct de vedere teoretic, rareori este utilizat în afara cazurilor rare. În era serviciilor cloud, cum ar fi Google Docs, majoritatea oamenilor nu mai au multe fișiere text.

Aplicațiile reale ale findstr sunt puțin mai subtile și implică rezultate mai puternice. Iată câteva dintre cele mai interesante exemple.

Găsirea anumitor tipuri de fișiere

Comanda dir include deja opțiunea de a căuta nume de fișiere folosind expresii regulate. Dar cu findstr, puteți căuta fișiere care partajează alte atribute, cum ar fi ora sau data creării.

Să presupunem că a apărut o eroare la ora 18:43 și doriți să găsiți toate fișierele jurnal create în acel moment. Doar cu comanda dir, va trebui să verificați manual rezultatele sau să obțineți toate fișierele jurnal și să le comparați. Folosind findstr, aceasta devine o comandă simplă.

dir | findstr 06:43

Puteți încerca același truc pentru a găsi fișiere create la o anumită dată sau pentru a obține o listă de directoare.

dir | findstr DIR

Filtrarea informațiilor de rețea cu Netstat.

Netstat este o comandă Windows la îndemână care vă oferă toate informațiile despre conexiunile de rețea ale computerului dvs. — prea multe informații, care este locul unde intră findstr.

Televarea ieșirii netstat în findstr vă permite să căutați conexiuni cu proprietăți specifice. De exemplu, așa puteți obține o listă cu toate conexiunile stabilite.

netstat | findstr INFIINTAT

Acest truc este util atunci când diagnosticați problemele de rețea. Puteți chiar să utilizați findstr cu un PID de aplicație pentru a găsi toate conexiunile deschise de un anumit proces.

netstat -o | findstr 13120

Obținerea unor adrese IP specifice

Comanda ipconfig vă permite să vizualizați detaliile tuturor interfețelor de rețea ale sistemelor, inclusiv adresele IP. Puteți folosi findstr pentru a extrage un anumit tip de adresă IP fără a fi nevoie să parcurgeți tot.

ipconfig | findstr Temporar

Puteți extinde această metodă pentru a obține orice informații de la ipconfig, de la măștile de subrețea până la adresele de gateway.

Analizarea fișierelor script

Orice limbaj de programare în care codificați, fișierele de script sunt în cele din urmă doar text. Aceasta înseamnă că puteți utiliza findstr pentru a analiza scripturi și a prelua anumite secțiuni fără a căuta întregul cod.

Să presupunem că vrem să vedem cum a fost folosită instrucțiunea if într-un anumit script. Putem folosi următoarea comandă:

findstr if script.ahk

Acest lucru nu numai că va afișa liniile folosind instrucțiunea if, dar ne va afișa și expresiile folosite. De asemenea, puteți include parametrul /N pentru a afișa numerele de linii, ceea ce este foarte util pentru fișierele script.

findstr /N if script.ahk

Merită folosit Findstr?

Principala dificultate în navigarea prin interfața liniei de comandă este cantitatea de text pe care trebuie să o verifici. Findstr este un instrument esențial pentru extragerea de informații utile și filtrarea mesajelor nedorite.

Deoarece toate comenzile terminalului oferă o ieșire bazată pe text, findstr poate fi întotdeauna folosit pentru a localiza datele relevante. De la depanarea problemelor de rețea până la găsirea fișierelor corecte, fiecare acțiune devine mai eficientă cu findstr..

Chiar și în afara sinergiei sale cu alte comenzi, findstr este util pentru capacitatea sa de a parcurge conținutul fișierelor text. Puteți găsi erori specifice în fișierele jurnal generate de mașină sau puteți prelua secțiuni de cod într-un script complex.

Pe scurt, findstr este un instrument indispensabil în arsenalul oricărui utilizator avansat de Windows, în special unul care intenționează să se familiarizeze cu interfața liniei de comandă.

.

Postări asemănatoare:


27.09.2022