Skrypty - uzupełnienie i utrwalenie
Materiał do omówienia:
- nawiasy strukturalne { ... },
- wywołanie podpowłoki ( ... ), lokalność zmiennych środowiskowych,
- przypomnienia dotyczące najczęściej popełnianych błedów:
- gdzie stosować [ ],
- gdzie stosować $[ ],
- gdzie potrzebne są spacje, a gdzie ich nie powinno być,
- kiedy można pominąć $,
- inne - wedle stanu faktycznego.
Ćwiczenia:
- Napisac skrypt, ktory wypisze te pliki z biezacego katalogu,
ktore zawieraja swoja nazwe w swojej tresci.
- Napisać skrypt, który dla każdego swego argumentu, który jest
plikiem znajdzie najdłuższy zawarty w nim wiersz.
- Napisać skrypt, który działa w nieskończonej pętli i
ilekroć jakiś użytkownik się zaloguje lub wyloguje,
wypisuje stosowną informację
(przydatne polecenia: sleep, diff).
- Napisz skrypt, ktory wypisze wszystkie pliki podane jako argumenty
na standardowe wyjscie, ale puste wiersze zastapi w nich
np. napisem [Pusty wiersz].
- Napisz skrypt, który dla każdego argumentu, który jest plikiem
wypisze zestawienie: dla każdego słowa w pliku, ile razy
występuje;
jeżeli któryś z argumentów nie jest plikiem, to skrypt powinien
to zasygnalizować;
jeżeli skrypt zostanie wywołany bez argumentów, to powinien
przetwarzać standardowe wejście.
- Napisz skrypt, który wczyta ze standardowego wejścia plik tekstowy
i wypisze dla niego statystykę następującej postaci: Dla każdego
słowa pojawiającego się na wejściu należy wypisać ile razy to
słowo pojawia się na wejściu i dane słowo.
Taka statystyka powinna być posortowana wg. malejącej liczby
powtórzeń.
(Wskazówka: Najpierw należy przekształcić wejście tak, żeby każde
słowo było w osobnej linii, następnie pogrupować takie same słowa,
skorzystać z uniq -c, a na koniec posortować statystykę.)
- Napisać procedurę zamieniającą liczbę na jej reprezentację słowną
(dla liczb do 99).
- Obliczyć coś (silnię, liczby Fibbonacciego).
- wedle uznania.