Úvod do UNIXu - cvičení


Cvičení se konají pondělí, 10:40 a 12.20 v SU2 na Malé Straně. Na obou cvičeních se probírá zhruba stejná látka, pokud se vám jedno nehodí, můžete v omezené míře přijít na druhé. Dlouhodobé přesuny či přesuny více lidí prosím konzultujte předem.

Podmínky k získání zápočtu

Zápočet získáte jedním z následujících způsobů:

Domácí úkoly

Domácí úkoly, které se dají odevzdat mi prosím posílejte jako přílohy emailu. Úkoly, které nejde odevzdat, nebudu nijak kontrolovat (ale ani se nepočítají jako body ke splnění zápočtu), je ale ve vašem zájmu je splnit.
  1. Vytvořte soubor a/b/--help, učiňte cd a/b a následně tento soubor smažte. Zašlete alespoň dvě možná řešení.
  2. V adresáři fotky vypište soubory (soubory s příponou .jpg nebo .JPG) větší než 1MB.
  3. V adresáři /usr/lib je spoustu souborů a symbolické odkazy na ně. Vypište soubory, na které žádný přímý symbolický odkaz z /usr/lib nevede (tedy pokud vede z /lib, jako by nebyl. (Nápověda: o symbolických odkazech pomůže man ln. Možná se budou hodit sort a uniq. Buďte vynalézaví.)
  4. Napište jednoduchý skript mktemp: skript vytvoří soubor v /tmp s jedinečným jménem (podle nějaké šablony, kterou si můžete zvolit) a vypíše jeho plnou cestu na standardní výstup. Pokud skriptu předáte nějaký argument, použije se namísto /tmp.
  5. Tentokrát máme dva podúkoly:
    1. Napište skript rev v sedu (každou řádku napíše pozpátku).
    2. Napište skript, který smaže duplicitní prázdné řádky.
  6. Napište skript permcut, který prohází až 9 sloupečků souboru podle libovolné permutace (umí i vynechat). Skript jako parametry bere oddělovač (jednoznakový) a následně permutaci sloupečků, jaká má být na výstupu. Příklad: permcut : 7 5 1 2
  7. Napište skript unpackgood, který dostane jediný argument (archiv .tar, .tar.gz, .zip, ...) a chytře ho rozbalí: pokud by po rozbalení vzniklo více adresářů či souborů (tedy by to udělalo bordel), vytvoří podadresář a rozbalí do něj.
  8. Stáhněte si soubor se seznamem letišť a států a vypište všechny mimo USA ve formátu kod (napr. PRG) (tab) nazev letiste (tab) kod zeme (použijte co nejvíce awk).
  9. Napište skript vcp, který pomocí dd bude kopírovat soubory a vykreslovat progress bar, kolik je již okopírováno (v bytech). Skript fungující pro jeden soubor je za bod, pro více souborů za dva body (progress bar ukazuje celkovoé velikosti).

Probraná látka

1. hodina (17. 2. 2014)

2. hodina (24. 2. 2014)

Zaskakoval Martin Pelikán.

3. hodina (3. 3. 2014)

5. hodina (17. 3. 2014)

6. hodina (24. 3. 2014)

7. hodina (31. 3. 2014)

8. hodina (7. 4. 2014)

9. hodina (14. 4. 2014)

10. hodina (21. 4. 2014)

11. a 12. hodina (28. 4. 2014)

Zaskakoval Martin Pelikán.

13. hodina (21. 4. 2014)

Doporučená literatura

Pokud jste něco nepochopili na přednášce, cvičení, nebo se chcete jenom zdokonalit, nabízím několik hodnotných odkazů, kam má cenu se podívat.

Další odkazy