Size: 4087
Comment:
|
Size: 85
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 5: | Line 5: |
== Vyučujúci == ## Doplň vyučujúcich * Gejza Jenča gejza.jenca@stuba.sk == 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 * Textový editor vim * Programovací jazyk Python * Základy internetových protokolov * Protokol http * Základy HTML == Domáce zadania == === Cvičenia pre prípravu na prvé skúšobné cvičenie === A) premenovanie obrázkov 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}}}. 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. B) upravte skript z A) tak, aby premenoval aj súbory ako {{{obrazok1.jPG}}} a podobne. C) Vytvorte v bashi skript {{{showsize}}}, ktorý sčíta dĺžky súborov v aktuálnom adresári a výsledok vypíše. Pomôcka: je niekoľko ciest ako to spraviť. Vyskúšajte prvú cestu a potom druhú: V prvom rade musíte nejako vyprodukovať stĺpec s dľžkami súborov. Buďto na to choďte cez {{{ ls | cut -c ... }}} alebo {{{ for FILE in *; do stat ... $FILE }}} (viď manuálová stránka {{{stat}}}) Teraz je viac ciest. 1. Naprogramujete to sčítanie v bashi sami, klasicky cez premenné s použitím bashovskej aritmetiky cez príkaz let. 2. Pomocou postupnosti príkazov prepojených do rúry vyrobíte z tých čísel výraz ako {{{12+1024+254}}} a ten potom pošlete na vstup príkazu bc cez rúru. Budete zrejme musieť nahradiť nové riadky plusom, to sa robí pomocou {{{ tr '\n' '+' }}} Kostra prvého spôsobu: {{{ SUM=0 for NUMBER in `... kód produkujúci zoznam dĺžok ...`; do ... sem prirátavanie NUMBER k SUM cez let ... done echo $SUM }}} Kostra druhého spôsobu: {{{ ... kód produkujúci zoznam dĺžok ... | tr '\n' '+' | bc }}} Poznamenávam, že tomu ešte niečo chýba, pretože ten {{{tr}}} vyrobí z posledného newline tiež plus, takže {{{bc}}} bude frfľať, že má nekorektný príkaz. Stačí však ešte jeden {{{sed 's...'}}} a je to; poraďte si sami. == Materiály == * [[attachment:prva.pdf|pdf k prvej prednáške]] * [[attachment:tahak_unix.pdf|Ťahák - príkazy v UNIXe]] === Pythonovské programy === * [[/Fork|fork(), wait(), SIGCHLD]] * [[/Pipe|pipe()]] * [[/Socket| UNIXové sockety]] === Skripty === == 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) 1. ''Začínáme programovat v jazyce Python'', Daryl Harms, Kenneth !McDonald; Computer Press, 2003 (nie je nutné, stačí dokumentácia v systéme) 1. ''The Art of Unix Programming'', Eric S. Raymond, http://www.faqs.org/docs/artu/ 1. ''Umění programování v Unixu'', Eric S. Raymond, (český preklad horeuvedeného) 1. ''How To Ask Questions The Smart Way'', Eric Steven Raymond, http://www.catb.org/~esr/faqs/smart-questions.html 1. ''Dive into Python'', Mark Pilgrim, http://www.diveintopython.org/ 1. ''Advanced Bash-Scripting Guide'', Mendel Cooper, http://tldp.org/guides.html 1. ''GNU/Linux Command-Line Tools Summary'', Gareth Anderson, http://tldp.org/guides.html == Webové stránky == 1. http://www.root.cz/clanky/regularni-vyrazy-1/ seriál o regulárnych výrazoch od P. Satrapu == Podmienky na zápočet == 20 bodov zo 40. Body sa budú udeľovať v rámci cvičení. == Príklady a cvičenia == == Výsledky == |
Počítačové siete
2008/09 -- ZS