Systemy operacyjne
Rafał Polak 12k2 |
Laboratorium Komputerowe nr.6 |
TEMAT: Środowisko Linux - Programowanie w języku powłoki 2
Celem ćwiczenia będzie opanowanie języka skryptowego w powłoce bash oraz zapoznanie się z poleceniami i operatorami wykorzystywanymi do programowania.
Podczas pisania programu może okazać się, iż niezbędne będzie pobranie informacji od użytkownika. Polecenie pobierające dane:
read imie
echo „Witaj $imie”
BUDOWA POELEMENTÓW PROGRAMU i OPERATORY
W celu działaniach na plikach niezbędne będzie pobieranie informacji dotyczących interesujących nas plików lub pojedynczego pliku, jak i zarówno działanie na katalogach. Ważne jest by rozróżniać folder od katalogu. Do tego służą niżej wymienione operatory:
-d nazwa odnosi się do katalogu
-f nazwa jest zwykłym plikiem
-r nazwa może być czytany przez proces
-s nazwa ma długość większą od zera
-w nazwa może być zapisany przez proces
-x nazwa plik jest wykonywalny
Ważnym podzespołem pliku są funkcje. Działają one na identycznej zasadzie jak w języku C. Przykład zastosowania funkcji w kodzie dodająca jedynkę do zmiennej:
Funkcje można definiować także bezpośrednio w wierszu poleceń i odwoływać się do nich poprzez wywołanie nazwy funkcji. Dodatkowo bezpośrednio w wierszu poleceń powłoki można wykonywać działania matematyczne według poniższego przykładu. Należy pamiętać o odpowiednich znakach spacji i sleshu przy wykonywaniu mnożenia:
ZADANIA SKRYPTOWE
Pierwszy skrypt pobierający datę, katalog w którym się aktualnie znajdujemy i zliczający ilość plików w nim zawarty.
Drugi skrypt polega na zastosowaniu pobierania danych od użytkownika z klawiatury. Możliwe jest pobieranie kilka zmiennych jednocześnie.
Następnym skryptem do samodzielnego opracowania jest program działający na dwóch zmiennych oraz poleceniu expr służącym do wykonywania działań matematycznych:
Poniżej znajduje się kod skryptu działający na operatorach plikowych sprawdzający czym jest zadany przez użytkownika programu wpisany ciąg znaków, czy folderem czy plikiem.
Oto są dodatkowo przykładowe skrypty pętli FOR, WHILE oraz instrukcji warunkowej CASE.
CASE:
FOR:
WHILE:
Skrypt działający w pętli while do podania odpowiedniego wyrażenia, poprawnej odpowiedzi. Jeżeli odpowiedź jest nie poprawna zapytuje o nią ponownie:
Oraz przedstawienie zasady działania pętli until, która działa analogicznie do pętli while, jednakże działa do momentu w którym wyrażenie staje się prawdziwe.