e-gradiva          SERŠ Maribor O projektu Besednjak
  logotip  
Osnove |  Skladi |  Topologije |  Mediji |  Pristopne |  LAN |  Omrežni |  Transportni |  Povezovanje |  Varnost |  Storitve |  Varnost |  Sistemi |  Strežniki

Linux

Linux

Linux

Linux

Linux

Windows

Windows

Windows

Unix

Netware

Uporabniški računi

Nadgradnje sistema

Ukazne lupine in osnovni ukazi

V tej učni vsebini boste spoznali:

Prvi koraki v ukazni lupini

Ukazna lupina (angl. shell) je program, katerega namen je uporabniku omogočiti sporazumevanje z jedrom. Sporazumevanje je znakovno, kar pomeni, da uporabnik s tipkovnico vpisuje ukaze in bere odgovore z zaslona. To je precej podobno okolju DOS, kjer ima podobno vlogo program COMMAND.COM.

Na splošno obstajajo različne vrste vmesnikov: znakovni in grafični, na primer grafični vmesnik X–Window System, ki nam omogoča poganjanje ukazov z uporabo miške in tipkovnice.

V ukazni lupini poganjamo programe, s katerimi izvajamo želena opravila. Ta so lahko uporabniški programi do najrazličnejših administratorskih opravil in nastavitev sistema. Vse pa izhaja iz zamisli in zasnove operacijskih sistemov UNIX, da je mogoče vsako delo, pa naj bo še tako zapleteno, razdrobiti na majhne in natančno določene naloge, ki jih zelo učinkovito postorijo posebni programi. Naloga uporabnika pa je, da poganjajo zaporedje pravih programov.

Prednost tega pristopa je množica preizkušenih sistemskih programov, ki jih je potrebno samo povezati s skripti.

Ukazne lupine

V uporabi je veliko različnih ukaznih lupin. Od lupine, ki jo uporabljamo pričakujejo, da bo omogočala čimbolj učinkovito delo. Preglejmo nekaj bolj razširjenih ukaznih lupin.

Bournova lupina
Bournova lupina je ena prvih bolj razširjenih lupin, katere glavni avtor je Stephen R. Bourne (verjetno ste uganili). Velja za standardno lupino Unixa in je navadno v večini sistemov Unix na voljo, ko postanemo skrbnik sistema. Bournovo lupino prepoznamo po privzetem pozivniku $. Zaradi njene učinkovitosti in razširjenosti je večina sistemskih skriptov napisana v tej lupini. Primer je skripta whatis.
Lupina C
Do uporabnika je prijaznejša lupina C, ki so jo razvili na Kalifornijski univerzi v Berkeleyju konec sedemdesetih let. Za osnovo ima jezik C.
Kornova lupina
Pri podjetju AT&T je David Korn leta 1986 napisal novo lupino, ki naj bi premostila razlike med prej omenjenima lupinama. Kornova lupina se je uspešno uveljavila ne samo v sistemih Unix, ampak tudi v OS/2, VMS in DOS. Deloma okrnjena različica, ki se imenuje pdksh, najdemo tudi v distribucijah Linux–a. Zanjo je značilno, da pomni vnesene ukaze, pozna regularne izraze, funkcije, nadomestne znake.
Lupina bash
Lupina bash je nastala v okvirih projekta GNU. Cilj je bila prosto dostopna lupina, ki bo združljiva s standardom POSIX. Standard POSIX pa je povzel vse dobre lastnosti iz Kornove lupine. Tako lupina bash dobi tiste lastnosti, ki so jih izumili pri načrtovanju drugih in postane standardna lupina v Linux–u.

Delo ukazne lupine

Ko se prijavimo v sistem, interaktivna lupina prebere inicializacijske datoteke in čaka na naš vnos, kar lahko ugotovimo iz izpisanega pozivnika. Lupini ukažemo, naj nekaj stori, tako da vtipkamo želeni ukaz. Na primer: zapišemo ukaz za prikaz imena trenutnega imenika:

pwd

Ko zapišemo ukaz in ga potrdimo s vrašalko (tipka enter), ga ukazna lupina razčleni. Splošni potek razčlenjevanja je sledeči:

  1. 1. Lupina najprej razreši posebne znake, z nadomestnimi znaki vred.
  2. 2. Osveži zgodovino vnesenih ukazov.
  3. 3. Razreši narekovaje.
  4. 4. Zamenja nadomestna imena z osnovnimi. Nadomestna imena, ki smo jih določili z ukazom alias, zamenja z njihovim pomenom.
  5. 5. Poišče morebitne rezervirane besede. Rezervirane besede so na primer if ali while.
  6. 6. Izvede uporabljene funkcije.
  7. 7. Ukazno vrstico razdeli v besede in prepozna preusmeritve.
  8. 8. Upošteva podane preusmeritve. Če so v ukazni vrstici podane preusmeritve, na primer > ali >& jih upošteva in datotekam priredi prave tokove.
  9. 9. Razporedi posle.Če smo na primer ukaz zaključili z znakom & za izvajanje v ozadju, se tak proces zažene v ozadju.
  10. 10. Poskrbi za sistemske signale.
  11. 11. Poišče izvedljive datoteke z imenovanimi programi.
  12. 12. Imenovane programe izvede.

Iz opisa delovanja ukazne lupine lahko zaključimo, da nam ukazna lupina omogoča preprosto izdelavo ukaznih skriptov, s katerimi poenostavimo razne postopke in avtomatiziramo rutinska opravila. Ukaze, ki jih uporabljamo v ukaznih lupinah, lahko brez sprememb zberemo v skriptih.

slika: ukazna lupina (shell)

Predstavitev osnovnih ukazov sistema Unix

Spoznali bomo samo najpogostejše ukazi za premikanje med mapami in za delo z njimi, ter datotekami. Ukazi imajo možnosti še raznih izbir, ki jih ne bomo navajali. O vsakem posameznem ukazu lahko med samim delom v ukazni lupini izvemo z uporabo ukaza man, ki izpiše seznam vseh dostopnih izbir.

cd
Spremeni trenutno mapo.
Skladnja: cd mapa
Kjer je mapa ime mape, v katerega želite vstopiti. (.) se nanaša na trenutni imenik, (..) na starpevski imenik. Če ni določen noben imenik, se privzame vaš domači imenik.
Primer:
cd ../vaje
nastavi vaš trenutni imenik za en nivo navzgor in spet za en nivo navzdol v vaje.
ls
Izpiše seznam datotek in map.
Skladnja: ls mapa
Kjer je imenik ime imenika ali datotek za izpis.
Ukaz pozna še različne izbire med katerimi je najpogosteje uporabljana izbira -l (za "dolgi" izpis, ki vključuje velikost datoteke, lastnika, dovoljenja za dostop do datoteke in tako naprej).
Primer: ls -l /home/borut
izpiše vsebino imenika /home/borut.
mkdir
Ustvari novo mapo.
Skladnja: mkdir mapa
Kjer je imenik imenik, ki naj se ustvari.
Primer: mkdir /home/borut/test
ustvari imenik test v imeniku /home/borut.
rmdir
Brisanje mape.
Skladnja: rmdir imenik
Kjer imenik definira imenik za izbris.
Primer: rmdir /home/borut/win95
izbriše mapo /home/borut/win95, če je le-ta prazna.
Primer: rmdir -rf /home/borut/win95
izbriše imenik /home/borut/win95 z vsemi podmapami in datotekami.
cp
Prepiše eno ali več datotek v drugo datoteko ali v imenik.
Skladnja: cp datoteke cilj
Kjer datoteke našteva datoteke za prepis in je cilj ciljna datoteka ali imenik.
Primer: cp ../vaje vaje1
prepiše datoteko ../vaje v datoteko vaje1.
mv
Premakne eno ali več datotek v drugo datoteko ali imenik. Ta ukaz je ekvivalenten prepisu, ki mu sledi izbris izvorne datoteke.
Skladnja: mv datoteke cilj
Kjer datoteke našteva datoteke za premik in je cilj ciljna datoteka ali imenik.
Primer: mv ../vaje vaje1 premakne datoteko ../vaje v datoteko vaje1.
rm
Brisanje datotek. Upoštevamo, da datotek ne moremo več dobiti nazaj, ko jih enkrat izbrišete - stavek
Skladnja: rm datoteke
datoteke - seznam datotek Primer: rm /home/borut/vaja123.txt
izbriše datoteko vaja123.txt v mapi /home/borut.

Primer: rm -i /home/borut/vaja123.txt
izbriše datoteko vaja123.txt v mapi /home/borut, vendar zahteva potrditev brisanja.
man
Prikaže stran priročnika za dani ukaz ali vir
Skladnja: man ukaz
Kjer je ukaz ime ukaza ali vira, za katerega bi radi dobili pomoč.
Primer: man ls izpiše pomoč za ukaz ls. 

Zaključek

vprašanjanja vprašanje

V tej lekciji smo spoznali ukazne lupine.

Sofinaciranje projekta in pravice

Izvedbo projekta je omogočilo sofinanciranje Evropskega socialnega sklada Evropske unije in Ministrstva za šolstvo in šport.