← До списку лабораторних по Python
Повний опис / сценарій лабораторної:
Meta: навчитися викликати системні утиліти і не ламати безпеку через shell True. Krok 1. Створити файл src/app/proc35.py. Komandi: cd ~/python_lab1/src; touch app/proc35.py Krok 2. Написати функцію яка викликає ls через subprocess run без shell. Poyasnennya: передай список аргументів. Krok 3. Вивести код виходу і стандартний вивід команд. Krok 4. Спробувати виклик з неправильним каталогом і побачити помилку. Krok 5. Продемонструвати ризик використання shell True з рядком який включає змінні користувача. Poyasnennya: тільки для навчання, не запускай небезпечні команди. Krok 6. Оновити функцію так щоб вона ніколи не використовувала shell True для зовнішніх даних. Krok 7. Додати функцію яка повертає текстовий вивід команди для подальшого парсингу. Krok 8. Занотувати приклади корисних інтеграцій через subprocess, наприклад виклик git або системних моніторів. Krok 9. Продумати як обробляти таймаут виконання процесу через параметр timeout. Krok 10. Mini zvit. Zavdannya: опиши правила безпеки при роботі з subprocess у сервісах які приймають користувацький ввід.