comanda Findstr pe Windows este utilă pentru căutarea unui model de text specific în fișiere. Funcționalitatea este similară cu comanda grep pe sistemul de operare Linux. Puteți găsi mai jos sintaxa „findstr” pentru diferite cazuri de utilizare.
Căutare text/string într-un fișier:
findstr pattern filename
De exemplu, pentru a căuta șirul „Ferestre”, în fișierul text CLItips.txt, comanda ar fi ca mai jos.
findstr Windows CLItips.txt
rețineți că comanda de mai sus caută exact „Windows”., Consideră cazul în mod implicit. Deci, dacă aveți o linie care are cuvântul „windows”, nu ar fi imprimat în ieșirea comenzii de mai sus.
Ignore text case:
puteți adăuga / I comuta pentru a ignora cazul în căutare. Deci, dacă executați ” findstr windows /I CLItips.txt’, face caz insensibil model de potrivire.
căutați oricare dintre cuvintele date
dacă doriți să imprimați liniile care au oricare dintre setul de cuvinte dat, puteți adăuga lista de cuvinte în ghilimele duble în comanda findstr.,
findstr "word1 word2 word3.." filename.txt
findstr "Apple Orange" fruits.txt
această comandă ar imprima o linie dacă are cuvântul ” măr „sau cuvântul” portocaliu ” sau ambele cuvinte.
căutați modelul cu mai multe cuvinte
findstr /C:"word1 word2 word3..." filename
/C indică faptul că modelul de căutare trebuie să fie potrivit literal.
de exemplu, pentru a căuta șirul „Apple Ball Cat” în cartea de fișiere.txt, comanda ar fi ca mai jos
findstr /C:"Apple Ball Cat" Book.txt
căutare cu expresii regulate
puteți utiliza expresii regulate cu comutatorul findstr /R. Comanda tipică ar fi ca mai jos.,
findstr /R pattern filename.txt
aici modelul poate fi specificat folosind expresii regulate.
Exemple:
căutați apariția tuturor cuvintelor care se termină cu ” xyz ” într-un fișier.
findstr /R *xyz filename.txt
Căutați text în toate fișierele dintr-un director curent
puteți utiliza wildcard ‘*” pentru a specifica că toate fișierele dintr-un director trebuie căutate pentru șirul dat.
De exemplu, pentru a căuta „windows” în toate fișierele din directorul curent, puteți utiliza comanda de mai jos.,
findstr /I windows *
Pentru a căuta toate fișierele de text în directorul C:\data:
findstr /I windows C:\data\*.txt
Căutare pentru mai multe siruri de caractere
Dacă aveți nevoie pentru a căuta mai multe siruri de caractere, atunci puteți face acest lucru cu cel de mai jos batch script.
@echo offfor /F %%i in (pattern.txt) do (echo Files containing %%ifindstr /M /C:%%i /S *.txt)
” model.txt ‘ este fișierul având siruri de caractere(unul pe linie) care trebuie să fie căutat. Comanda de mai sus caută numai fișiere text. Puteți personaliza comanda findstr din script pentru a căuta în fișiere cu alte extensii. Adăugarea opțiunii „/ M ” la comandă determină imprimarea numai a numelor de fișiere.,
imprimați numai liniile în care șirul dat este la începutul liniei.
puteți adăuga / B comutator pentru a indica faptul că șirul specificat ar trebui să fie la începutul liniei.
findstr /B /C:windows CLItips.txt
Imprimare numai linii în cazul în care șirul dat este la capăt de linie
findstr /E /C:windows CLItips.txt
Imprimare numerele de linie pentru toate potrivite linii.
puteți adăuga / n comuta la comanda findstr pentru a imprima numere de linie pentru liniile potrivite.
imprimați numai numele fișierelor
finstr /M /C:"pattern" *.log
această comandă caută modelul în toate *.,fișiere jurnal, și apoi imprimă numai numele de fișiere care au Modelul. Chiar dacă un fișier are mai multe apariții ale modelului, este imprimat o singură dată de findstr.