Upload
joseph-mitchell
View
51
Download
0
Embed Size (px)
DESCRIPTION
Java shell basic serbian srpski
Citation preview
Shell skripte
Operativni sistemi raunske vebe Termin 11
Doc. Dr Veljko StankoviAldina Pljaskovi, dipl. in.
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
2
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
3
Program koji se izvrava u shell-u OS-a manipulacija datotekama
izvravanje komandi i izvrnih datoteka
tampanje poruka
Automatizacija najee izvravanih komandi tekstualna datoteka sa vie komandi
interpreter redom izvrava komande jednu za drugom
Shell skripte
Shell skripta
4
Prednosti jednostavnost
brzina razvijanja
povezivanje postojedih komandi i aplikacija
interpretiranje umesto prevoenja
Mane greke dovode do katastrofalnih posledica
loe performanse, kompatibilnost, ogranienost
Shell skripte
Shell skripta
5
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
6
1. Kreiranje tekstualne datoteke (*.sh) tekstualni editor (npr. kate, kWrite)
2. Pisanje programa
3. Podeavanje rx privilegija
4. Izvrenje skripte $sh ime_skripte
5. Lociranje
Shell skripte
Kreiranje shell skripte
7
1. Kreirati tekstualnu datoteku zad_1.sho cat > zad_1.sh
2. Otkucati teksto echo Hello world
o Ctrl +D
3. Podesiti rx privilegije
4. Izvriti skriptu
Shell skripte
1. Zadatak
8
1. Sistemske promenljive
2. Korisnike promeljive
3. Pozicioni parametri
4. Specijalne promenljive
5. Programske strukture
Shell skripte
Elementi shell skripte
9
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
10
Sistemske promenljive
Shell skripte
Elementi shell skripte
11
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
12
alfanumeriki niz karaktera
poinje slovom ili znakom _
ne treba koristiti specijalne karaktere *, ?, #
case sensitive
Primeri: HOME, SYSTEM_VERSION, no1, v1ar
Shell skripte
Korisnike promenljive
13
Bez posebne deklaracije
Numeriki tip:
n=10 (n =10, n= 10, n = 10)
Znakovni tip:
ime=Rec
tekst=operativni sistemi
NULL vrednost:
ime=
ime=
Shell skripte
Korisnike promenljive
14
Referenciranje - znak $ echo $ime
Podrazumevana vrednost je NULL
MY_MESSAGE=Hello world
MY_SHORT_MESSAGE=hi
MY_NUMBER=1
MY_PI=3.142
MY_OTHER_PI=3,142
MY_MIXED=123abc
Shell skripte
Korisnike promenljive
15
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
16
Pozicioni ulazni parametri (argumenti)
$sh ime_skripte
pristupanje argumentima $1, $2, itd.
programska dodela set
set p1 p2 p3 == $1=p1 $2=p2 $3=p3
Specijalni $0 ime skripte
$# broj pozicionih parametara
$@, $* nadovezane vrednosti svih parametara
Shell skripte
Parametri
17
Shell skripte
2. Zadatak
18
#zad_2.sh
echo Pozvan sam sa $# parametara
echo Moje ime je $0
echo Moj prvi parametar je $1
echo Moj drugi parametar je $2
echo Vrednost svih parametara je $@
sh zad_2.sh
sh zad_2.sh hello world earth
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
19
echo
za tampanje teksta na ekranu
read
za uitavanje sa standardnog ulaza
shift
pomera vrednost pozicionih parametara za n
Shell skripte
Komande
20
echo What is your name?read my_nameecho Hello $my_name
Uvod
Kreiranje shell skripte
Sistemske promenljive
Korisnike promenljive
Parametri
Komande
Programske strukture
Shell skripte
21
if...then...else...fi
case...in..esac
for...in...do...done
while...do...done
until...do...done
Shell skripte
Programske strukture
22
tests lista komandi ija se vrednost ispituje
uslov je ispunjen ako je vrednost razliita od nule
if i then u razliitim linijama, inae ; izmeu
[] - test
Shell skripte
if...then...else...fi
23
Operatori testiranja
o !expr
o expr1 a expr2
o expr1 o expr2
o -z str; -n str
o s1=s2
o s1!=s2
Shell skripte
if...then...else...fi
24
Operatori testiranja
o -d adr
o -f file
o -r file
o -x file
o -w file
o -s file
o expr1 eq|-ne|-lt|-le|-gt|-ge expr2
Shell skripte
if...then...else...fi
25
Kreirati shell script datoteku zad_3.sh koja ima jedanulazni argument.
U sluaju da ulazni argument predstavlja datoteku,skripta prikazuje na ekranu njen sadraj. (naredba cat)
U sluaju da je direktorijum, prelazi na njega i listanjegov sadraj.
Za sluaj da ime nije ni datoteka ni direktorijum,prikazuje se odgovarajuda poruka.
Shell skripte
3. Zadatak
26
Shell skripte
Reenje
27
word vrednost koja se poredi sa nizom elemenata
patern element sa kojim se poredi
commands komande koje se izvravaju
Shell skripte
case..in...esac
28
word vrednost koja se poredi sa nizom elemenata
patern element sa kojim se poredi
commands komande koje se izvravaju
Shell skripte
case..in...esac
29
Kreirati shell script datoteku zad_4.sh koja ima jedanulazni argument. Ulazni argument je datoteka kojutreba obraditi.
U sluaju da da se radi o shell skripti, ona se izvrava.
Ukoliko se radi o tekstualnoj datoteci, njen sadraj se prikazuje na ekranu.
U svim ostalim sluajevima datoteka se brie.
Shell skripte
4. Zadatak
30
Shell skripte
Reenje
31
name broja koji uzima vrednost iz liste
word_list lista vrednosti koje uzima broja (ako nije navedena, pozicioni parametri)
commands komande koje se izvravaju
expr1 izraz koji se proverava pre ulaska u petlju
expr2 petlja se izvrava dok je ovaj izraz razliit od nule
expr3 izraz se proverava kad god je expr2!=0
Shell skripte
for..in...do...done
32
Shell skripte
for..in...do...done
33
Kreirati shell script datoteku zad_5.sh koja prikazujeimena svih datoteka u sistemu koje u svom imenusadre zadati argument i ija je veliina 0B.
Shell skripte
5. Zadatak
34
Shell skripte
Reenje
35
test uslov koji se proverava
commands komande koje se izvravaju
Shell skripte
while...do...doneuntil...do...done
36
Kreirati shell script datoteku zad_6.sh koja sadrajdatoteka koje korisnik unosi sa tastature spaja u datoteku spoj.dat koja se nalazi u tekudemdirektorijumu. Obrada se prekida kada korisnik sa tastature za datoteku unese 'KRAJ'.
Shell skripte
6. Zadatak
37
Shell skripte
Reenje
38
Kreirati shell script petlje.sh koji sadri dve petlje kojese izvravaju konkurentno. Prva petlja treba da odstampa na ekranu brojeve od 1 do 10, a druga brojeve od 11 do 20.
Startovati shell script vise puta uzastopno i uocitiredosled stampanja brojeva.
Domadi poslati u telu poruke, ne kao atachment.
Shell skripte
Domai zadatak
39
Pitanja?
Operativni sistemi