Differences between revisions 74 and 82 (spanning 8 versions)
Revision 74 as of 2010-03-29 15:35:56
Size: 5185
Editor: jenca
Comment:
Revision 82 as of 2010-05-11 09:17:11
Size: 5388
Editor: jenca
Comment: potrebujem zdrojak
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
## == Downloady pre cvičenia ==
##
## [[attachment:gallery.tar.gz]]
##[[attachment:passwd.txt]]
## [[attachment:zadanie2.pdf]]
##[[attachment:zadanie_opr.pdf]]
== Downloady pre cvičenia ==

[[attachment:gallery.tar.gz]]
[[attachment:passwd.txt]]
[[attachment:zadanie2.pdf]]
[[attachment:zadanie_opr.pdf]]
Line 13: Line 13:
##== Uploady == == Uploady ==
Line 15: Line 15:
##[[/Uploady]] [[/Uploady]]
Line 23: Line 23:
V utorok 16:00-17:00. Radšej ale konzultuje priamo na cvičení. V stredu 12:00-13:50. Radšej ale konzultuje priamo na cvičení.
Line 36: Line 36:
##== Výsledky ==
##
##[[/Výsledky]]

== Zadanie na prvé zápočtové cvičenie ==
== Skúška ==
Line 43: Line 39:
Tieto zadania si vypracujte doma. Ak to zvládnete sami, nemali by ste mať na skúšobnom cvičení
problém. Môžete si samozrejme navzájom pomáhať. Zadania nebudem zbierať. Na cvičení vám
dám urobiť niečo podobné, takže si vypracované zadania doneste, pomôže vám to. Body dostanete
za to, čo urobíte priamo na cvičení.
Termíny skúšky sú (vždy o 9:00 v zasadačke KMaDG)

 * 29.5.2009
 * 15.6.2009
 * 19.6.2009

Dostavte sa podľa možnosti všetci na termín 29.5.

Skúška bude prebiehať písomne. Obsah viď nižšie. Ihneď po napísaní vaše písomky opravím, potom
budem prípadne ešte konzultovať s tými ľuďmi, ktorí budú na hranici alebo nebudú spokojní s hodnotením.
Line 49: Line 51:
Pripomínam, že príkaz man je vaším priateľom. Pre komplexnejšie informácie odporúčam nahliadnuť do Advanced Bash Scripting Guide, link je nižšie. Z Vychodila treba vedieť:
Line 51: Line 53:
a) premenovanie obrázkov  * Kapitola 3: od začiatku až po 3.6 včítane
 * Kapitola 4: od začiatku až po 4.3 včítane
 * Kapitola 5: v tej miere ako bolo odprednášané, najmä
  * štruktúra príkazového riadku, úvodzovky, apostrofy, medzery, opačné lomítka atď
  * presmerovanie vstupu a výstupu, {{{>,<,>>,<<,|}}}
  * skripty, mechanizmus fungovania konštrukcie {{{!#}}}
  * premenné, špeciálne premenné, argumenty skriptov
  * kontrola toku programu : {{{if,while,for}}}
  * princíp fungovania {{{if}}} a {{{while}}} cez exit status
  * príkaz {{{test}}}
 * Kapitola 6:
  * základné programy pre prácu s textom {{{sort,cut,paste}}}
  * regulárne výrazy, program {{{grep}}}
  * program {{{sed}}} (iba príkaz)
Line 53: Line 68:
Vytvorte v bashi skript `rename_pics`, ktorý premenuje všetky súbory v aktuálnom adresári, ktoré majú koncovku `JPG` na súbory s koncovkou `jpg`, napr. `obrazok1.JPG` premenuje na `obrazok1.jpg`. Z Pythonu treba vedieť základy:
Line 55: Line 70:
Pomôcka: pre transformáciu mena môžete použiť takéto niečo: {{{NOVE_MENO=`echo $STARE_MENO | sed '...'`}}} Dávajte si pozor na to, aby ste premenovali iba koncovky, reťazec JPG sa môže vyskytovať aj uprostred mena súboru. Môžete prepokladať, že mená súborov neobsahujú žiadne biele znaky, napr. medzery.  * zabudované dátové typy
 * základy programovania ({{{for,while,if}}})
 * funkcie a parametre ({{{def}}})
 * triedy ({{{class}}})
Line 57: Line 75:
b) upravte skript z a) tak, aby premenoval aj súbory ako `obrazok1.jPG` a podobne. Na skúške sa vás:
 
 * Spýtam na pár vecí z kapitoly 3 a 4.
 * Napíšete mi jeden-dva jednoduché príkazové riadky vykonávajúce zadanú činnosť. Nemusíte sa učiť všetky options všetkých príkazov, ak bude niečo treba vedieť, prezradím to. Ide mi o overenie znalosti princípu fungovania.
 * Bude zadanie o regulárnych výrazoch.
 * Napíšete krátky program v Pythone. Pravdepodobne to bude nejaká trieda.
Line 59: Line 82:
Pomôcka: man sed. == Výsledky ==
Line 61: Line 84:
c) a teraz to spravte všeobecne: [[/Výsledky]]
Line 63: Line 86:
Napíšte skript, ktorý dostane v argumentoch zoznam mien súborov a premenuje ich tak, aby mali koncovky malými
písmenami.
== Domáce zadania, cvičenia ==
Line 66: Line 88:
Pomôcky: neurčitý počet argumentov je možné spracovať pomocou cyklu
{{{
while true
do
  ... spracovanie $1 ...
  if shift
  then
     break
  fi
done
}}}
alebo
{{{
while test "$*" != ""
do
  ... spracovanie $1 ...
  shift
done
}}}
prípadne
{{{
for ARG in "$@"
do
  ... spracovanie $ARG ...
done
}}}
[[/Zadanie1 | Domáce zadanie na prvé cvičenie]]
Line 93: Line 90:
Pre transformáciu veľkých písmen na malé použite príkaz `tr`. [[attachment:python_zadania.pdf | Zadania z Pythonu]] <- Verzia 6.5.2009
Line 95: Line 92:
Domáce zadanie na testovacie cvičenie z Pythonu: vyriešte zo zadaní časť o reláciách.
Domáce zadanie na opravné/náhradné cvičenie z shell scriptov: rovnaké ako na normálne cvičenie.
Line 96: Line 95:
== Ďalšie cvičenia == == Vzorove riesenia cviceni ==
Line 98: Line 97:
[[ /CviceniaZoShellu | Cvičenia zo shellu]]

[[attachment:python_zadania.pdf | Cvičenia z Pythonu]]
[[/Riesenie 1| Riešenie prvého skúšobného cvičenia (shell)]]
Line 142: Line 139:
15 bodov z 30. Body sa budú udeľovať v rámci cvičení. Budú 2 zápočtové cvičenia, jedno zo shell
scriptov a jedno z Pythonu.
15 bodov z 30. Body sa budú udeľovať v rámci cvičení.

Operačné systémy

2008/09 -- LS

Downloady pre cvičenia

gallery.tar.gz passwd.txt zadanie2.pdf zadanie_opr.pdf

Uploady

/Uploady

Vyučujúci

Konzultačné hodiny

V stredu 12:00-13:50. Radšej ale konzultuje priamo na cvičení.

Stručná osnova predmetu

  • Princípy OS Unix/Linux
  • Základy práce so systémom
  • Súborový systém
  • Užívatelia a skupiny
  • Procesy, rúry
  • Prehľad základných utilít
  • Programovanie v shelli, skripty
  • Programovací jazyk Python

Skúška

Termíny skúšky sú (vždy o 9:00 v zasadačke KMaDG)
  • 29.5.2009
  • 15.6.2009
  • 19.6.2009

Dostavte sa podľa možnosti všetci na termín 29.5.

Skúška bude prebiehať písomne. Obsah viď nižšie. Ihneď po napísaní vaše písomky opravím, potom budem prípadne ešte konzultovať s tými ľuďmi, ktorí budú na hranici alebo nebudú spokojní s hodnotením.

Z Vychodila treba vedieť:

  • Kapitola 3: od začiatku až po 3.6 včítane
  • Kapitola 4: od začiatku až po 4.3 včítane
  • Kapitola 5: v tej miere ako bolo odprednášané, najmä
    • štruktúra príkazového riadku, úvodzovky, apostrofy, medzery, opačné lomítka atď
    • presmerovanie vstupu a výstupu, >,<,>>,<<,|

    • skripty, mechanizmus fungovania konštrukcie !#

    • premenné, špeciálne premenné, argumenty skriptov
    • kontrola toku programu : if,while,for

    • princíp fungovania if a while cez exit status

    • príkaz test

  • Kapitola 6:
    • základné programy pre prácu s textom sort,cut,paste

    • regulárne výrazy, program grep

    • program sed (iba príkaz)

Z Pythonu treba vedieť základy:

  • zabudované dátové typy
  • základy programovania (for,while,if)

  • funkcie a parametre (def)

  • triedy (class)

Na skúške sa vás:

  • Spýtam na pár vecí z kapitoly 3 a 4.
  • Napíšete mi jeden-dva jednoduché príkazové riadky vykonávajúce zadanú činnosť. Nemusíte sa učiť všetky options všetkých príkazov, ak bude niečo treba vedieť, prezradím to. Ide mi o overenie znalosti princípu fungovania.
  • Bude zadanie o regulárnych výrazoch.
  • Napíšete krátky program v Pythone. Pravdepodobne to bude nejaká trieda.

Výsledky

/Výsledky

Domáce zadania, cvičenia

Domáce zadanie na prvé cvičenie

Zadania z Pythonu <- Verzia 6.5.2009

Domáce zadanie na testovacie cvičenie z Pythonu: vyriešte zo zadaní časť o reláciách. Domáce zadanie na opravné/náhradné cvičenie z shell scriptov: rovnaké ako na normálne cvičenie.

Vzorove riesenia cviceni

Riešenie prvého skúšobného cvičenia (shell)

Materiály

Literatúra

  1. Linux: Příručka českého uživatele, Vilém Vychodil; Computer Press 2003, Brno (je žiadúce, aby každý mal svoju kópiu)

  2. Začínáme programovat v jazyce Python, Daryl Harms, Kenneth McDonald; Computer Press, 2003

  3. Learning Python",, Mark Lutz, David Ascher; O'Reilly 2007, http://slav0nic.org.ua/static/books/python/OReilly.Learning.Python.3rd.Edition.Oct.2007.eBook-BBL.rar

  4. The Art of Unix Programming, Eric S. Raymond, http://www.faqs.org/docs/artu/

  5. Umění programování v Unixu, Eric S. Raymond, (český preklad horeuvedeného)

  6. How To Ask Questions The Smart Way, Eric Steven Raymond, http://www.catb.org/~esr/faqs/smart-questions.html

  7. Dive into Python, Mark Pilgrim, http://www.diveintopython.org/

  8. Advanced Bash-Scripting Guide, Mendel Cooper, http://tldp.org/guides.html

  9. GNU/Linux Command-Line Tools Summary, Gareth Anderson, http://tldp.org/guides.html

  10. A Byte of Python, Swaroop C H, http://www.swaroopch.com/notes/Python

  11. How to Think Like a Computer Scientist, Jeffrey Elkner, Allen B. Downey and Chris Meyers, http://openbookproject.net//thinkCSpy/

Webové stránky

  1. http://www.root.cz/clanky/regularni-vyrazy-1/ seriál o regulárnych výrazoch od P. Satrapu

  2. http://www.py.cz/ Český server venovaný Pythonu, obsahuje aj dokumentáciu k starším verziám Pythonu

Podmienky na zápočet

15 bodov z 30. Body sa budú udeľovať v rámci cvičení.

Príklady a cvičenia

Výsledky

KMaDGWiki: OperacneSystemy (last edited 2024-09-17 13:58:44 by jenca)