Tato stránka poskytuje přehled očekávaných učebních výstupů ze všech cvičení. Může se hodit pokud hledáte nějaké konkrétní téma, ale nepamatujete si, na kterém cvičení se probíralo.
Cvičení #1
Znalosti konceptů
- vysvětlit, proč není grafické uživatelské rozhraní pevnou součástí Linuxu
- vyjmenovat několik rozdílů mezi různými grafickými rozhraními dostupnými v systému Linux
- vysvětlit v širších souvislostech, co je to distribuce Linuxu
- vysvětlit, co lze chápat pod pojmem unixová rodina operačních systémů
- vyjmenovat několik druhů objektů, které jsou obvykle potřebné pro softwarové projekty
- vysvětlit v širším významu, co je to verzovací nástroj
- vysvětlit základní (vysokoúrovňové) operace verzovacích nástrojů
Praktické dovednosti
- nastartovat vlastní počítač do Linuxu (buď použitím USB disku, dual-bootem nebo přes virtuální stroj)
- přihlásit se do grafického linuxového prostředí
- přihlásit se do fakultní instance GitLabu
- vytvořit nový projekt na GitLabu
- nahrát nové změny na GitLab pomocí webového rozhraní a vytvořit na něm commit
- upravit existující soubory v GitLabovém projektu (ve webovém rozhraní GitLabu)
- upravit nastavení upřednostňovaného (Linuxového) grafického prostředí
- vytvořit jednoduchou GitLabovou issue v projektu
Cvičení #2
Znalosti konceptů
- vysvětlit, kdy je rozhraní příkazového řádku lepší (či horší) volbou než grafická aplikace
- vysvětlit rozdíl mezi (emulátorem) terminálu a shellem
- vysvětlit, co je to cesta k souboru
- vysvětlit rozdíl mezi relativní a absolutní cestou
- vysvětlit, jak fungují tzv. shell wildcards (názvy souborů)
- vysvětlit, co jsou argumenty příkazové řádky (options, switches)
- vysvětlit užitečnost oddělovače
--(při použití wildcardů u zvláštně pojmenovaných souborů) - vysvětlit, co je domovský adresář (home directory)
Praktické dovednosti
- spustit a ukončit emulátor terminálu
- nastavit si oblíbený emulátor terminálu
- procházet souborový systém pomocí nástrojů textového uživatelského rozhraní (např.
mcneboranger) - procházet souborový systém pomocí příkazů
lsacd - použit základní přepínače příkazu
ls, jako jsou-l,-hnebo-a - použít zástupné znaky (wildcards) pro omezení příkazů na určité podmnožiny souborů
- spustit Pythoní skript z příkazové řádky
- zobrazit obsah textových soubor pomocí utility
cat - zobrazit obsah binárních souborů jako hexadecimální výpis pomocí programu
hexdump - identifikovat typ souboru pomocí nástroje
file - využívat vestavěné manuálové stránky (základní operace)
- používat schránky dostupné v grafických prostředích Linuxu
- používat doplňování tabelátorem pro rychlejší psaní názvů souborů a cest
- používat soubory se neobvyklými názvy
Cvičení #3
Znalosti konceptů
- vysvětlit, co znamená skript (v kontextu Linuxového prostředí)
- vysvětlit, co je to shebang a jak ovlivní spuštění skriptu
- chápat rozdíl mezi tím, zda skript má nebo nemá nastavený spustitelný bit
- vysvětlit, co je pracovní adresář (working directory)
- vysvětlit, proč je pracovní adresář soukromou “vlastností” běžícího programu
- vysvětlit, jak jsou argumenty (parametry) předané skriptu s shebangem
- vysvětlit, co je standardní výstup a vstup
- vysvětlit, proč přesměrování standardního vstupu/výstupu není (přímo) viditelné uvnitř programu
- vysvětlit, jak se liší
cat foo.txtacat <foo.txt - vysvětlit, jak může být více programů používajících standardní vstup/výstup složeno (propojeno) dohromady
- volitelné: vysvětlit, proč
cdnemůže být normální spustitelný soubor jako/usr/bin/ls
Praktické dovednosti
- vytvořit Linuxový skript se správným shebangem
- nastavit executable bit skriptu pomocí utility
chmod - přistupovat k argumentům příkazové řádky ve skriptu Pythonu
- přesměrovat standardní vstup a výstup programů v shellu
- používat standardní vstup a výstup v Pythonu
- použít rouru (pipe)
|pro řetězení více programů dohromady - používat základní filtry:
cut,sort, … - použít
grep -Fpro filtrování řádků odpovídajících zadanému vzoru
Cvičení #4
Znalosti konceptů
- vysvětlit, co je pracovní kopie Gitu (klon, working copy)
- vysvětlit, proč existují dva druhy výstupu (výstupních proudů): stdout a stderr
- vysvětlit co je návratový kód programu (exit code)
- vysvětlit rozdíly a typická využití pro pět hlavních rozhraní, která může využít CLI program: argumenty, stdin, stdout, stderr a návratová hodnota (exit code)\n
- volitelné: vysvětlit, co je to deskriptor souboru (z pohledu aplikace, nikoliv OS/kernelu)
Praktické dovednosti
- nastavit informace o autorovi v Gitu
- nastavit výchozí editor v shellu (nastavení
EDITORv~/.bashrc) - naklonovat Gitový repozitář v shellu přes HTTPS
- prohlédnout změny v Gitové pracovní kopii (příkaz
git status) - vytvořit commit v Gitu z příkazové řádky (příkazy
git addagit commit) - nahrát nové commity na Git server nebo stáhnout nové do pracovní kopie\n(za předpokladu projektu s jedním uživatelem, příkazy
git pushagit pull)\n - prohlédnout si souhrnné informace o předchozích commitech pomocí
git log - volitelné: upravit si chování Gitu pomocí aliasů
- přesměrovat standardní výstup a standardní chybový výstup programu v shellu
- změnit návratovou hodnotu (exit code) pro Pythoní skripty
- používat speciální soubor
/dev/null - používat standardní chybový výstup v Pythonu
- volitelné: upravit si chování shellu pomocí aliasů
- volitelné: upravit si konfiguraci shellu pomocí
.bashrca.profileskriptů - volitelné: upravit si vzhled promptu pomocí proměnné
PS1