Przejdź do głównej zawartości

findstr

Komenda findstr to narzędzie wiersza poleceń w systemach Windows, które umożliwia wyszukiwanie tekstu w plikach oraz danych wyjściowych z użyciem wzorców, w tym wyrażeń regularnych. Jest bardziej rozbudowaną wersją komendy find i pozwala filtrować wyniki w sposób elastyczny.


findstr [opcje] "wzorzec" [ścieżka\plik]
  • Może wyszukiwać wiele wzorców jednocześnie.
  • Obsługuje wyrażenia regularne oraz możliwość rekursywnego przeszukiwania katalogów.

ParametrOpis
"wzorzec"Określa wzorzec tekstowy lub wyrażenie regularne do wyszukania.
[ścieżka\plik]Plik lub maska plików, w których będzie wykonywane wyszukiwanie.
/sPrzeszukuje pliki w bieżącym katalogu i podkatalogach.
/iIgnoruje wielkość liter przy wyszukiwaniu.
/nWyświetla numery linii, w których znaleziono dopasowania.
/rUżywa wyrażeń regularnych (domyślnie włączone, ale można wyłączyć za pomocą /c:).
/c:"tekst"Traktuje podany ciąg jako dosłowny tekst, ignorując składnię regex.
/mWyświetla tylko nazwy plików zawierających dopasowania.
/xWyświetla tylko linie, które w całości pasują do wzorca.
/vWyświetla linie, które nie zawierają dopasowania.

Okno terminala
# Wyszukiwanie słowa "Error" w pliku log.txt
findstr "Error" log.txt
# Wyszukiwanie frazy "Login Failed" w plikach .log w katalogu i podkatalogach
findstr /s /i "Login Failed" *.log
# Wyszukiwanie linijek zaczynających się od "User" z wyrażeniem regularnym
findstr /r "^User" raport.txt
# Wyświetlenie tylko nazw plików, które zawierają słowo "Warning"
findstr /m "Warning" *.txt

  • findstr obsługuje standardowe wyrażenia regularne (np. ^, $, .) i działa z wieloma plikami jednocześnie.
  • Do przeszukiwania dużych struktur katalogów zaleca się używanie /s z maskami plików.
  • Nie wymaga uprawnień administratora, ale może ich potrzebować przy dostępie do chronionych plików.

Błąd / KomunikatPrzyczynaRozwiązanie
File not foundNiepoprawna ścieżka lub brak plików spełniających maskęSprawdź ścieżkę i używaną maskę plików.
Brak wyników mimo obecności wzorcaBłąd w składni wyrażenia regularnego lub brak /i przy różnej wielkości literUpewnij się, że wzorzec jest poprawny, lub dodaj /i, by ignorować wielkość liter.
Access deniedBrak uprawnień do odczytu plikówUruchom CMD jako administrator lub zmień uprawnienia dostępu.