grep
- grep – program służący do filtrowania i wyszukiwania wzorców tekstowych w plikach lub danych wejściowych.
- Wspiera wyrażenia regularne, tryb odwrotnego dopasowania, kolorowanie wyników, liczenie wystąpień i wiele więcej.
- Dostępny praktycznie we wszystkich systemach Unix/Linux, często domyślnie zainstalowany.
Składnia
Dział zatytułowany „Składnia”grep [opcje] WZORZEC [plik...]
WZORZEC
– ciąg tekstowy lub wyrażenie regularne.- Jeśli nie podano pliku, dane są czytane z wejścia standardowego (stdin).
Parametry
Dział zatytułowany „Parametry”Parametr | Opis |
---|---|
-i | Ignoruj wielkość liter |
-v | Zwróć linie, które nie pasują do wzorca |
-r/-R | Rekurencyjnie przeszukuj katalogi |
-l | Wypisz tylko nazwy plików zawierających dopasowanie |
-L | Wypisz pliki bez dopasowania |
-n | Dodaj numer linii |
-c | Zlicz liczbę pasujących linii |
-o | Wyświetl tylko fragmenty dopasowane do wzorca |
--color=auto | Podświetl dopasowania kolorem |
-E | Użyj rozszerzonych wyrażeń regularnych (równoważne egrep ) |
Przykłady użycia
Dział zatytułowany „Przykłady użycia”# 1. Znajdź linie zawierające "błąd" w logachgrep "błąd" system.log
# 2. Ignoruj wielkość liter i wypisz linie z numeramigrep -in "hasło" auth.log
# 3. Wyświetl tylko dopasowane słowagrep -o "[0-9]\{3\}-[0-9]\{2\}-[0-9]\{4\}" dane.txt
# 4. Przeszukaj katalog rekurencyjniegrep -r "TODO" ./projekt
# 5. Policz dopasowaniagrep -c "ssh" /var/log/auth.log
- Przykłady ilustrują wyszukiwanie fraz, wyrażeń regularnych, analizę logów i filtrowanie danych tekstowych.
- Domyślnie
grep
używa podstawowych wyrażeń regularnych – dla rozszerzonych użyj-E
. - Często stosowany z
pipe
(|), np.ps aux | grep ssh
. - Warto używać
--color=auto
w aliasach dla czytelności. grep
różni się odfgrep
iegrep
– obecnie zaleca się stosowaniegrep -F
igrep -E
.
Najczęściej spotykane błędy i jak je naprawić
Dział zatytułowany „Najczęściej spotykane błędy i jak je naprawić”Błąd / Komunikat | Przyczyna | Rozwiązanie |
---|---|---|
Binary file matches | Plik binarny zawiera dopasowanie | Użyj -a , aby traktować plik jako tekstowy |
Brak wyników | Nieprawidłowy wzorzec lub wielkość liter | Sprawdź opcję -i i poprawność wzorca |
grep: brak pliku | Literówka lub nieistniejąca ścieżka | Zweryfikuj ścieżkę do pliku |
Linki i źródła
Dział zatytułowany „Linki i źródła”- man grep – dokumentacja polecenia.
- GNU grep manual – oficjalna dokumentacja projektu.
- Regex101 – testowanie wyrażeń regularnych.