PWSZ KROSNO
SYSTEMY OPERACYJNE
ZAKAAD SIECIOWYCH SYSTEMÓW
LABORATORIUM
INFORMATYCZNYCH
ĆWICZENIE nr 4
Temat: Powłoki systemowe (shells)
l. Powłoka Bourne a (sh)
1.1. Uruchomienie powłoki Bourne'a
Z dowolnej uruchomionej powłoki:
# /bin/sh µ! - uruchomienie powÅ‚oki Boume'a (znak zachÄ™ty systemowej $)
# /bin/sh - c polecenie µ! - wykonanie polecenia i zakoÅ„czenie pracy
$ CTRL+D - zamknięcie powłoki
1.2. Wywoływanie poleceń
$ ls l µ!
$ pwd # Komentarz µ! - # pozwala umieszczać komentarz,
$ ps ; w ; Is -l µ! - wywoÅ‚anie kilku poleceÅ„ w jednym wierszu, ; -separator poleceÅ„
Wykonanie w podprocesie, np.:
$ (cd .. ; cp d.* /fun ) µ! - wykonanie poleceÅ„ w nawiasie i powrót do poczÄ…tkowego
katalogu
Nawiasy grupujÄ…ce, np.:
$ { ls ; w ; } > plik_danych µ!
Zaobserwować różnice pomiędzy poleceniami:
$ echo 'Mój katalog to $HOME' µ!
$ echo Mój katalog to $HOME" µ!
Potoki:
$ ls | more µ!
$ ls /export/home/| grep 'i*' µ! - wyÅ›wietlenie katalogów z i w nazwie;
Proste konstrukcje warunkowe, np.:
$ rm www && echo Poszlo! µ! - drugie polecenie wykona siÄ™ tylko wtedy, gdy
pierwsze zakończy się sukcesem.
$ rm posty || echo Nie poszlo ! µ! - drugie polecenie wykona siÄ™ tylko wtedy, gdy
pierwsze nie zakończy się sukcesem.
Polecenia wbudowane, np.:
$ type ls pwd µ!
Zmienne, np.:
$ z=y µ!
$ p${z}dµ!
$ expr 1 +2 µ!
$ a=6µ!
$ expr $a + 3 µ!
1.3. Programowanie w języku powłoki sh
Pętla for, np.:
$ for i in i2222 i7777 i3455 µ!
Radosław Gołąb: Systemy operacyjne -1-
PWSZ KROSNO
SYSTEMY OPERACYJNE
ZAKAAD SIECIOWYCH SYSTEMÓW
LABORATORIUM
INFORMATYCZNYCH
>doµ!
>echo Hallo $i ! µ!
>doneµ!
Instrukcja while, np.:
$ while true
>do
>date
>done
(CtrI+C)
Wywołanie skryptu:
" sh skrypt µ!
" ./skrypt µ!
" skrypt µ! - jeÅ›li ma prawo wykonywania (nadane poleceniem chmod)
Instrukcje sterujące i wyrażenia złożone, stosowane w skryptach:
if rm $1
then echo Plik $1 usunięty
elif [ ! -f $1 ]
then echo Pliku o nazwie $1 nie ma takiego pliku lub zły typ
else echo Nie ma prawa dostępu do pliku o nazwie $1
fi
2. Powłoka C (csh)
2.1. Inicjalizacja i wybrane parametry powłoki C
% set µ! - wyÅ›wietla wszystkie zdefiniowane zmienne powÅ‚oki.
% set zmienna=wartość µ! - instrukcja definicji zmiennej powÅ‚oki.
Symbol $zmienna pozwala na odwołanie się do zmiennej po jej nazwie, np.:
% set a=(588abc3) µ! - definiuje zmiennÄ… a
% echo $a(3] µ! - odwoÅ‚uje siÄ™ do trzeciego elementu zmiennej a
% set a[3]=6 µ! - definiuje trzeci element zmiennej a
2.2. Histroia poleceń
% history µ! ProszÄ™ zapoznać siÄ™ z mechanizmem historii poleceÅ„
% set history=100 µ!
% set savehist=50 µ!
Polecenie Opis
Wyświetla zawartość bufora gdzie przechowywane są wiersze
% history µ!
Ponowne wykonanie ostatniego polecenia
% !! µ!
Ponowne wykonanie polecenia bieżącej sesji o numerze n
% !n µ!
Ponowne wykonanie k-tego polecenia od końca
% !-k µ!
Radosław Gołąb: Systemy operacyjne -2-
PWSZ KROSNO
SYSTEMY OPERACYJNE
ZAKAAD SIECIOWYCH SYSTEMÓW
LABORATORIUM
INFORMATYCZNYCH
Ponowne wykonanie ostatniego polecenia rozpoczynajÄ…cego siÄ™
% !x µ!
znakiem x
% !? Ponowne wykonanie polecenia w którego wierszu występował łańcuch
znaków wzór
wzór?µ!
Ponowne wykonanie n-tego polecenia lecz ze zmianą argumentów,
% n:s/wzorl/wzor2/µ!
gdzie argi i arg2 sÄ… argumentami: starym i nowym
Ponowne wykonanie n-tego polecenia z argumentami od numeru i do
% !n:i-k µ!
k (!!:0 µ! - wywoÅ‚uje ostatnie polecenie bez argumentów, !!:0-3 µ!
wywołuje ostatnie polecenie z trzema pierwszymi argumentami)
Mechanizm substytucji nazwy katalogu macierzystego (home directory) poprzez znak
tyldy(~),np.:
% ls ~/plik µ! - wyÅ›wietl zawartość pliku plik w katalogu macierzystym
% cd ~i0222 µ! - przejdz do katalogu macierzystego użytkownika-i0222
2.3. Polecenie alias
Służy do tworzenia zastępczych nazw (pseudonimów) dla danego polecenia lub
szeregu poleceń, np.:
% alias h history µ!
% alias dir Is µ!
% alias ls ls -la µ!
% alias ps ps -ef µ!
% alias cd 'cd.\!* ; set prompt='pwd'\>\ \\!% µ! - powoduje, że po każdej zmianie
katalogu znak gotowości będzie zawierał nazwę nowego katalogu.
% unalias nazwa µ! - anulowanie przypisania ProszÄ™ pamiÄ™tać że Aliasy nie sÄ…
dziedziczone przez powłoki potomne.
3. Inne powłoki (w tym powłoki ograniczone)
Wywołanie powłoki Koma:
% ksh µ!
% /usr/lib/rsh µ! - ograniczona powÅ‚oka Boume'a
% /usr/bin/ rksh µ! - ograniczona powÅ‚oka Korna
% /usr/local/bin/tcsh µ! - powÅ‚oka tcsh
4. Wykonanie zadań przydzielonych przez prowadzącego
Radosław Gołąb: Systemy operacyjne -3-
Wyszukiwarka
Podobne podstrony:
so lab lista2so lab lista4so lab lista1so lab zasady wysylania plikowso lab notatka2Lab 10 SOLab cpplab 2T2 Skrypt do lab OU Rozdział 6 Wiercenie 3IE RS lab 9 overviewlab pkm 3lab chemia korozjalab tsp 3so 3Labwięcej podobnych podstron