Menu
Coddy logo textTech

Potok z grep

Część sekcji Podstawy ścieżki Terminal w Coddy. Lekcja 46 z 82.

Polecenie grep staje się szczególnie przydatne w połączeniu z potokami. Zamiast przeszukiwać plik, możesz filtrować wynik dowolnego polecenia, aby znaleźć dokładnie to, czego potrzebujesz.

Wyobraź sobie, że chcesz znaleźć konkretny plik na liście katalogu:

ls -l | grep "report"

To wyświetla szczegółowe informacje o wszystkich plikach, a następnie filtruje wyniki, pokazując tylko wiersze zawierające „report”. Otrzymujesz konkretne wyniki bez konieczności ręcznego przeglądania wszystkiego.

Przekazywanie potoku do grep działa z każdym poleceniem, które generuje tekst na wyjściu. Aby znaleźć uruchomione procesy związane z konkretnym programem:

ps aux | grep "python"

Możesz także łączyć grep z innymi poznanymi poleceniami. Aby policzyć, ile wierszy zawiera określone słowo:

cat logfile.txt | grep "error" | wc -l

Odczytuje plik, filtruje wiersze zawierające „error”, a następnie je zlicza. Poznane wcześniej flagi grep działają tak samo w potokach: użyj -i, aby dopasowywać bez rozróżniania wielkości liter, lub -v, aby wykluczać dopasowania.

challenge icon

Wyzwanie

Łatwy

Plik access.log zawiera rekordy dostępu do serwera WWW. Użyj potoku, aby odfiltrować i policzyć, ile żądań zakończyło się kodem statusu błędu 500.

Uruchom pojedyncze polecenie, które:

  • Używa cat, aby odczytać access.log
  • Przekazuje dane do grep, aby odfiltrować wiersze zawierające 500
  • Przekazuje dane do wc -l, aby policzyć pasujące wiersze

Podpowiedź: Połącz te trzy polecenia za pomocą symbolu |. Polecenie grep filtruje dane wyjściowe, a wc -l zlicza pozostałe wiersze.

Spróbuj swoich sił

Terminal
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Terminal