Jednym z poleceń, których najczęściej używam w terminalu, jest grep, nawet więcej niż cd o ls.
grep Ma wiele opcji i oferuje odmienne możliwości, jednak ja używam najbardziej konwencjonalnego możliwego sposobu, ale zacznijmy od wyjaśnienia Co to jest grep?
grep to po prostu filtr, to polecenie, które pokazuje wiersze pasujące do zadeklarowanego przez nas filtra.
Na przykład w naszym systemie mamy plik / usr / share / doc / bash / FAQ a zawartość tego pliku to:
Jeśli chcesz wyświetlić zawartość w terminalu za pomocą polecenia jak (tak kotku, jak kot hehe) mogą to zrobić:
cat /usr/share/doc/bash/FAQ
Załóżmy teraz, że chcemy wyświetlić tylko wiersz tego pliku, który mówi o wersji, w tym celu używamy grep:
cat /usr/share/doc/bash/FAQ | grep version
Umieszczenie tego w terminalu spowoduje wyświetlenie tylko linii zawierającej słowo „wersja” w tym pliku, ale nie będzie już pokazywać żadnej linii, która nie zawiera tego słowa.
A jeśli chcę pokazać wszystko oprócz wiersza wersji?
Innymi słowy, tak jak ci wyjaśniłem, wszystko co pasuje do filtra zostanie pokazane, teraz pokażę ci, jak sprawić, by wszystko się pojawiło z wyjątkiem co pasuje do filtra:
cat /usr/share/doc/bash/FAQ | grep -v version
Czy dostrzegasz różnicę? ... po prostu dodając -v to już robi różnicę 😀
Więc jeśli położyli grep pokaże tylko, co pasuje do filtra, ale jeśli umieścisz grep -v pokaże ci wszystko oprócz filtra.
Cóż, tutaj post się kończy, tylko kolejna wskazówka, że teraz może mogą go umniejszyć, ale ... nie mają pojęcia, jak przydatne może być grep, to naprawdę ratuje życie 😀
pozdrowienia
Niewątpliwie bardzo wszechstronne polecenie, które raz nauczysz się sobie z nim radzić, ułatwi Ci życie =) ...
Cześć! .. .. naprawdę bardzo przydatne polecenie .. w moim przypadku często go używam ..
Prostym przykładem może być na przykład dpkg -l | grep 'pakiet' (w przypadku dystrybucji opartych na Debianie), warto wiedzieć, czy mamy zainstalowany ten pakiet.
Wspaniale jest udostępniać te narzędzia całej naszej społeczności 😉
Bardzo dziękuję 😀
Rzeczywiście, grep jest tak potężny jak nasza wyobraźnia hahahaha, razem z awk (i cut) naprawdę osiągają cuda * - *
Wkrótce podam jeszcze kilka wskazówek dotyczących pracy z terminalami 😉
Pozdrawiam i dziękuję za komentarz.
PS: Ciekawe Twój e-mail LOL !!
Bardzo dobre!! Tak, z pewnością grep jest jednym z ratowników dla każdego, kto lubi korzystać z terminala. Tylko kilka uwag: naprawdę nie musisz w ogóle używać polecenia cat. Możesz umieścić nazwę pliku jako parametr grep w następujący sposób:
wersja grep / usr / share / doc / bash / FAQ
Ponadto, nawet gdyby się nie udało, zawsze byłaby opcja przekierowania danych wejściowych polecenia, wykonując coś takiego:
wersja grep </ usr / share / doc / bash / FAQ
To ostatnie można zrobić za pomocą dowolnego polecenia, więc nigdy nie jest konieczne używanie cat do wysyłania pliku na wejście polecenia.
Użycie przekierowania zamiast cat powoduje, że powłoka uruchamia o jeden proces mniej, a tym samym zużywa mniej zasobów. Nie jest to zauważalna różnica, ale jest uważana za dobrą praktykę.
Z drugiej strony grep staje się naprawdę przydatny przy korzystaniu z wyrażeń regularnych ... Gdybym chciał pomóc, tworząc post o wyrażeniach regularnych, co musiałbym zrobić? Czy wystarczy dodać nowy post z pulpitu WordPressa?
Ciekawe, zawsze przyzwyczaiłem się do używania go z kotem HAHAHAHA, dzięki za wskazówkę 😀
Dzięki grep możesz również uczynić filtry nieco mniej podstawowymi, na przykład:
grep -B3 -A3 -E -i --color=auto -n "(desde|hacia)?linux(\.)?$" ~/miarchivo.txt
Zasadniczo pokazuje linie zawierające szukany termin (który może występować w dowolnej kombinacji wielkich i małych liter) plus trzy linie przed nim i trzy po nim, wyróżnia wyniki innym kolorem, umieszcza numery linii na wynikach i umożliwia włączenie rozszerzonych wyrażeń regularnych, które w tym przypadku pozwalają na wyszukiwanie w „myfile.txt” wszystkich linii kończących się na desdelinux, w stronę Linuksa lub zwykłego Linuksa (z punktem końcowym lub bez).
Nawiasem mówiąc, wyrażenia regularne oferują dużą elastyczność i każdy dobry „geek” z pasją do wolnego oprogramowania powinien nauczyć się ich używać, hehe.
Możliwe jest również użycie zgrep dla tabletów w .ta.gz jest to bardzo przydatne, gdy chcemy przejrzeć stare logi. Twoje zdrowie
Cześć. Dzięki za post. Zdarza mi się, że używając grep, słowo, które piszę w pojawiających się wierszach, nie zmienia koloru. (zwykle tak jest) [przykład: grep cat file.txt]
pojawiają się linie i kot, ale kot nie przybiera określonego koloru, aby go odróżnić
(w ccompus mojego uniwersytetu jest to widoczne)
Czy wiesz, jak mogłem aktywować tę opcję?
Proszę, jeśli możesz mi odpowiedzieć. mój email to sps-003@hotmail.com
znajomy musi wpisać kota w cudzysłów 'kot' lub też "kot", a następnie nazwę pliku, w którym chce go znaleźć
Witaj przyjacielu, masz całkowitą rację, masz duże poczucie użyteczności. Od teraz na mojej liście ulubionych poleceń umieszczam grep na pierwszym miejscu.
pozdrowienia
A jak by to było pokazać pracowników przefiltrowanych według wynagrodzenia?