Jak korzystać z grep w systemie Linux, aby w sposób wyczerpujący zgłaszać, czy ciąg jest obecny w pliku?


14

Chcę wiedzieć, czy ack_enabled not definedjest obecny w określonym pliku all_defs.txti zwrócić coś, dzięki czemu mogę zrozumieć, czy ciąg jest obecny, czy nie.

Czy ktoś może mi powiedzieć, jak to zrobić?

Odpowiedzi:


19

Po prostu sprawdź kod wyjścia grep. wycisza -q, !neguje kod wyjścia:

if ! grep -q 'ack_enabled not defined' all_defs.txt ; then
    echo Not found.
fi

7

Więcej vebose one-liner

Następująca linijka jest jeszcze bardziej szczegółowa:

grep -q 'ack_enabled not defined' all_defs.txt && echo 'string found' || echo 'string not found'
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.