Bash a strukturované programování

Bash a strukturované programování Seznam všech příspěvků

Na letošním ročníku konference InstallFest jsem měl přednášku „Bash a strukturované programování“. Jako každý rok, i letos se konala první březnový víkend. Tentokrát jsem svoji shell přednášku pojal ve stylu Meme. Díky záznamu Strahovského AVC se můžete na přednášku podívat, nebo si ji jenom prohlédnout na webu.

Přednáška se zabývá zoufalými situacemi, kdy potřebujete přehledně programovat v prostředí bash. Pro psaní přehlednějšího kódu jsou k dispozici skripty, aliasy a funkce. Pro psaní nepřehlednějšího kódu pak příkaz eval (evil?). Těmto konstrukcím a jejich použití je věnována tato přednáška. Pokročilí uživatelé se dozví, jak se vypořádat s neexistencí výstupní hodnoty funkce nebo s parametry volanými odkazem.

Přednášku jsem opět připravil jako webovou prezentaci v systému „reveal.js“. Pro zájemce jsem zpřístupnil její zdrojové kódy na gitlabu.

Soubory z Installfestu 2018
  • f.sh - ukázkový skript pro trasování kódu
  • trace.sh - trasovací knihovna (funkce a nastavení)
  • trace-example.sh - pomocný skript, který spouští ukázku trasování

Obsah přednášky

Odkazy vedou na příslušný slide prezentace a na čas ve videu, kde část začíná. Někdy je téma přes několik slidů. Pohyb po slidech je buď pomocí mezerníku nebo klávesami PgUp a PgDown, případně šipkami. Klávesa ESC zobrazuje přehled slidů a klávesa B zatemní obraz.

  1. Intro 00:00:05
  2. Table of Contents 00:00:24
  3. Length of Spaghetti Code Is Too Damn High 00:02:03
  4. Brace Yourself, Structured Programming Is Comming 00:03:09
  5. Shut Up and Create a Function 00:07:43
  6. What If I Told You for Almost Every Purpose, Aliases Are Superseded by Shell Functions 00:14:27
  7. I’ll Create My Own Context with Variables and Parameters 00:18:39
  8. Inherit Traps You Want, Tweak Settings You Must 00:32:09
    • Ukázka trasování skriptu v terminálu 00:35:50
  9. Outro 00:46:55