Съдържание и теми, включени в курса
Ден 1
Модул 1: Въведение в Python за потребители на Unix
Теми
Защо Python за скриптиране и автоматизация
• предимства на Python за скриптиране
• използване на Python в системното администриране и DevOps
Сравнение между Bash и Python
• променливи
• контрол на потока (if, цикли)
• работа с файлове
• изпълнение на системни команди
Структура на Python скрипт
• изпълнение на Python скриптове
• използване на интерпретатора
• аргументи от командния ред
• въведение в argparse
Упражнения
Упражнение 1 – Конвертиране на прост Bash скрипт в Python
Bash скрипт, който:
• изброява файлове от директория
• филтрира по разширение
• показва статистики
Участниците ще пренапишат скрипта на Python.
Упражнение 2 – Python скрипт с CLI аргументи
Създаване на Python скрипт, който:
• получава параметри от командния ред
• обработва файлове
• показва структурирани резултати
Модул 2: Манипулация на файлове и директории
Теми
Работа с файловата система в Python
• четене и запис на файлове
• навигация в директории
• обработка на пътища
Използване на модула pathlib
• управление на пътища
• файлови операции
Замяна на Unix помощни програми
• grep
• find
• sed
• awk
с Python реализации
Упражнения
Упражнение 1 – Сканиране на файловата система
Python скрипт, който:
• търси големи файлове
• идентифицира стари файлове
• генерира отчет
Упражнение 2 – Обработка на конфигурационни файлове
Python скрипт, който:
• чете текстови файлове
• извлича релевантна информация
• генерира статистики
Ден 2
Модул 3: Обработка на логове и манипулация на текст
Теми
Работа с текст в Python
• операции с низове
• филтриране и трансформиране на данни
Регулярни изрази (regex)
• идентифициране на шаблони
• парсване на логове
Замяна на shell конвейри
Пример:
grep | awk | sed | sort
имплементиран в Python
Упражнения
Упражнение 1 – Анализ на лог файлове
Python скрипт, който:
• чете системни логове
• идентифицира грешки
• изчислява честота на грешките
Упражнение 2 – Конвертиране на shell конвейр в Python
Сложен Bash конвейр, трансформиран в Python скрипт
Модул 4: Автоматизиране на системни команди
Теми
Изпълнение на shell команди от Python
• модул subprocess
• прихващане на изход
• обработка на грешки
Автоматизиране на административни задачи
• изпълнение на системни команди
• интеграция с cron задачи
• скриптиране за повтарящи се задачи
Управление на процеси
• наблюдение на процеси
• просто паралелно изпълнение
Упражнения
Упражнение 1 – Python скрипт, който изпълнява системни команди
Скрипт, който:
• изпълнява Unix команди
• прихваща изхода
• генерира отчети
Упражнение 2 – Мониторинг на услуги
Python скрипт, който:
• проверява състоянието на услуга
• събира информация
• показва резултати
Ден 3
Модул 5: Разширена автоматизация и взаимодействие с външни услуги
Теми
Работа с API-та в Python
• въведение в HTTP заявки
• удостоверяване и токени
• обработка на JSON отговори
Python за DevOps автоматизация
• събиране на данни от външни услуги
• интеграция със съществуващи инструменти
• скриптиране на инфраструктура
Упражнения
Упражнение 1 – Python скрипт, консумиращ API
Скрипт, който:
• събира данни от API
• обработва информацията
• генерира отчет
Упражнение 2 – Автоматизиране на събирането на данни
Python скрипт, който:
• събира системна информация
• генерира JSON или CSV отчет
Модул 6: Изграждане на CLI инструмент за администриране
Теми
Структуриране на Python проект
• организация на кода
• повторно използване на функции
• модули и пакети
Създаване на CLI инструмент
• аргументи от командния ред
• структуриран изход
• обработка на грешки
Финален проект
Участниците ще изградят CLI инструмент за автоматизация на Python, който:
• анализира лог файлове
• идентифицира грешки
• генерира статистики
• може да се изпълнява от командния ред
Резултати от курса
До края на курса участниците ще могат:
• да трансформират shell скриптове в Python скриптове
• да използват Python за автоматизиране на системни задачи
• да обработват логове и сложни данни
• да изграждат CLI инструменти за Unix системно администриране
Изисквания
Предварителни изисквания
- Основни познания за Unix/Linux операционни системи
- Запознатост с използването на команден ред (shell/Bash)
- Опит в писането на прости shell скриптове (напр. цикли, условия, файлови операции)
- Общо разбиране на концепциите за системно администриране е предимство
- Не се изисква предишен опит с Python
Целева аудитория
- Системни администратори, работещи в Unix/Linux среди
- DevOps инженери, които искат да подобрят възможностите си за автоматизация
- Инженери и технически специалисти, използващи shell скриптиране за ежедневни задачи
- IT професионалисти, интересуващи се от преминаване от Bash към Python
- Разработчици, работещи в Unix среди, които искат да автоматизират работните си потоци по-ефективно
Отзиви от участници (2)
всичко беше съвършено
Florin Vrincianu
Курс - Python Programming Fundamentals
Машинен превод
Практическите упражнения, свързани с материалът, наистина помагат за по-добро разбиране на всеки тема. Освен това, начинът да започнете урока с лекция и продължите с практически упражнения е добър и полезен, за да свържете материалът, който беше представен по-рано.
Nazeera Mohamad - Ministry of Science, Technology and Innovation
Курс - Introduction to Data Science and AI using Python
Машинен превод