3.2. Umieszczenie danych w skrypcie

Problem

Działanie skryptu wymaga dostarczenia danych, które nie powinny być zapisane w oddzielnym pliku.

Rozwiązanie

Należy zastosować mechanizm osadzania dokumentu (ang. here-document), dostarczający tekst z wiersza polecenia, a nie z pliku. Wykorzystanie tego rozwiązania w skrypcie pozwala na zapisanie przetwarzanych danych wraz z kodem tego skryptu.

Oto przykład skryptu powłoki zapisanego w pliku o nazwie wew:

$ cat wew
#
# Oto osadzony dokument:
#
grep $1 <<EOF
Michał x.123
Jan    x.234
Ala    x.555
Piotr  x.818
Ania   x.822
Bartek x.919
EOF
$

Pozwala on na wyszukiwanie wpisów w nieskomplikowanej książce telefonicznej dla numerów wewnętrznych:

$ ./wew Ala
Ala    x.555
$

lub:

$ ./wew 555
Ala    x.555
$

Analiza

Polecenie grep odpowiada ...

Get Bash. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.