Laboratorium 2 ============== Programowanie w shellu ---------------------- 1_args Dostep do argumentow skryptu i operacji shift ($1 := $2, $2 := $3, itd. $0, nazwa programu nie ulega zmianie!) 2_args Wielokrotny shift i operacja 'read' - odczytanie danych ze standardowego wejscia i zapisanie w zmiennej $i. Dostep do zmiennych w shellu. 3_if Instrukcja warunkowa. Program 'test'. Zmienne eksportowane (EDITOR; zeby ustanowic inny edytor niz vi nalezy np. wydac polecenie export EDITOR=joe ) i nieeksportowane (przypisanie bez slowa export, np. dzis=wtorek). Znaczenie srednika - koniec polecenia, musi byc przed 'then'. 4_while Instrukcja petli while. Odwrotny apostrof. 5_case Instrukcja case. Uwaga na kretynska skladnie. Za to mozna uzywac wzorcow tak jak przy nazwach plikow: *, ?, [...]. Instrukcja set - podmienia liste argumentow skryptu na liste swoich argumentow. 6_for Petla for przebiegajaca argumenty programu. Co sie stanie gdy zamiast cudzyslowow uzyjemy apostrofow? 7_for Petla for przebiegajaca zadana liste slow. 8_funkcje Funkcje w shellu, rekurencja dozwolona! Przekazywanie argumentow do funkcji, jak do skryptu shellowego. 9_wstawki Symbole <, >, <<, >>. Uzycie \ do uniewaznienia specjalnego znaczenia pewnych symbolu (w tym przykladzie: nawiasow).