O'Reilly logo

Bash. Receptury by Cameron Newham, JP Vossen, Carl Albing

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

7.3. Zakończenie wyszukiwania wynikiem typu „prawda - fałsz”

Problem

Chcemy wiedzieć, czy dany ciąg tekstowy występuje w określonym pliku. Spodziewamy się jednak odpowiedzi typu „tak — nie”, bez wyświetlania jakichkolwiek informacji z listingu wynikowego.

Rozwiązanie

Należy dodać do polecenia grep opcję –q. Dla zagwarantowania maksymalnej przenośności rozwiązania można również odrzucić dane wyjściowe przez skierowanie ich do urządzenia /dev/null. W obydwu przypadkach wynik wykonanej operacji jest zapisany w zmiennej powłoki $? odpowiadającej za przechowywanie wartości wynikowej programu. Wspomniana zmienna może być wykorzystana w instrukcji warunkowej if w następujący sposób:

$ grep –q znajdźmnie plik.danych
$ if [ $? –eq 0 ] ; then echo jest ; else ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required