Návrh Školení
1. den
Modul 1: Úvod do Pythonu pro uživatele Unixu
Témata
Proč využívat Python k skriptování a automatizaci
• výhody Pythonu pro skriptování
• použití Pythonu při správě systému a v DevOps
Srovnání Bash a Pythonu
• proměnné
• řídicí struktury (podmínky, cykly)
• práce se soubory
• spouštění systémových příkazů
Struktura Python skriptu
• spouštění skriptů v Pythonu
• použití interpretu
• argumenty z příkazového řádku
• seznámení s knihovnou argparse
Cvičení
Cvičení 1 – Převod jednoduchého skriptu z Bash do Pythonu
Skript v Bash, který:
• vypisuje soubory z určitého adresáře
• filtruje je podle přípony
• vykazuje statistiky
Účastníci tento skript přepíší do Pythonu.
Cvičení 2 – Vytvoření skriptu s argumenty z příkazového řádku
Návrh a realizace skriptu, který:
• přijímá parametry z příkazové řady
• zpracovává soubory
• vypisuje výsledky ve strukturovaném formátu
Modul 2: Práce se soubory a adresáři
Témata
Manipulace s souborovým systémem v Pythonu
• čtení a zápis do souborů
• procházení adresářovou strukturou
• práce s cestami
Využití modulu pathlib
• správa cest
• operace se soubory a adresáři
Nahrazení běžných nástrojů Unixu
• grep, find, sed, awk – jejich funkce v Pythonu
Cvičení
Cvičení 1 – Vyhledávání v souborovém systému
Skript, který:
• hledá velké soubory
• identifikuje staré soubory
• generuje přehledný výstup
Cvičení 2 – Zpracování konfiguračních souborů
Python skript, který:
• načítá textové soubory
• z nich extrahuje důležité informace
• počítá a vyhodnocuje statistiky
2. den
Modul 3: Zpracování logů a textů
Témata
Práce s textem v Pythonu
• operace na řetězcích
• filtrování a transformace dat
Regulární výrazy (regex)
• vyhledávání vzorů v textech
• analýza logových souborů
Nahrazení běžných řetězců příkazů ze shellu
Například: grep | awk | sed | sort – realizace pomocí Pythonu
Cvičení
Cvičení 1 – Analýza logových souborů
Skript, který:
• načítá systémové logy
• detekuje chybové záznamy
• počítá jejich četnost
Cvičení 2 – Převod shell řetězce příkazů do Pythonu
Složitý skript z Bash převedený na ekvivalent v Pythonu
Modul 4: Automatizace systémových příkazů
Témata
Spouštění shell příkazů z Pythonu
• modul subprocess
• zachycování výstupu a chyb
Automatizace administrativních úkolů
• spouštění systémových příkazů
• integrace s plánovačem úloh cron
• vytváření skriptů pro opakované operace
Správa procesů
• sledování běžících procesů
• jednoduché paralelní zpracování úloh
Cvičení
Cvičení 1 – Skript spouštějící systémové příkazy
Program, který:
• vykonává Unixovské příkazy
• zaznamenává jejich výstup
• generuje souhrnné reporty
Cvičení 2 – Sledování stavu služeb
Python skript, který:
• kontroluje stav určité služby
• shromažďuje potřebné informace
• zobrazuje výsledky
3. den
Modul 5: Pokročilá automatizace a komunikace s externími službami
Témata
Práce s API v Pythonu
• úvod do požadavků HTTP
• ověřování a použití tokenů
• zpracování odpovědí ve formátu JSON
Python v kontextu DevOps automatizace
• sběr dat z externích služeb
• integrace s existujícími nástroji
• skriptování pro správu infrastruktury
Cvičení
Cvičení 1 – Skript čerpající data z API
Program, který:
• načítá informace z určitého API
• je dále zpracovává
• vytváří výstupní report
Cvičení 2 – Automatizace sběru systémových dat
Python skript, který:
• shromažďuje informace o systému
• generuje souhrnný report ve formátu JSON nebo CSV
Modul 6: Vytvoření nástroje pro správu systému na příkazovém řádku
Témata
Struktura projektu v Pythonu
• organizace kódu
• opětovné využití funkcí
• tvorba modulů a balíčků
Vytváření nástroje s příkazovým řádkem
• práce s argumenty z řádku
• strukturovaný výstup
• ošetření chyb
Závěrečné cvičení
Účastníci vytvoří nástroj na příkazovém řádku, který:
• analyzuje log soubory
• detekuje výskyt chyb
• počítá a vyhodnocuje statistiky
• lze jej spustit přímo z konzole
Výstupy kurzu
Po absolvování kurzu budou účastníci schopni:
• převádět shell skripty do formy Python kódu
• využívat Python pro automatizaci systémových operací
• zpracovávat logy i složité datové soubory
• navrhnout a implementovat nástroje na správu Unix systémů pomocí CLI
Požadavky
Požadované znalosti
- Základní znalosti operačních systémů Unix/Linux
- Orientace v používání příkazového řádku (shell/Bash)
- Zkušenosti s psaním jednoduchých shell skriptů (např. cykly, podmínky, práce se soubory)
- Obecné znalosti o správě systému jsou výhodou
- Předchozí zkušenosti s Pythonem nejsou nutné
Cílová skupina
- Správci systémů pracující v prostředí Unix/Linux
- Inženýři z oblasti DevOps, kteří chtějí rozšířit své automatizační schopnosti
- Techničtí specialisté a inženýři využívající shell skripty při každodenní práci
- IT profesionálové toužící po přechodu z Bash na Python
- Vývojáři pracující v prostředí Unix, kteří chtějí efektivněji automatizovat své workflow
Reference (2)
všechno bylo dokonalé
Florin Vrincianu
Kurz - Python Programming Fundamentals
Přeloženo strojem
Praktické cvičení související s obsahem skutečně pomáhají lépe pochopit každý téma. Navíc, styl začínání hodiny přednáškou a pokračování praktickým cvičením je dobrý a užitečný pro propojení s přednáškou prezentovanou dříve.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Kurz - Introduction to Data Science and AI using Python
Přeloženo strojem