課程簡介
第1天
模塊1:面向Unix用戶的Python介紹
主題
爲什麼選擇Python進行腳本編寫和自動化
• Python在腳本編寫中的優勢
• 在系統管理和DevOps中使用Python
Bash與Python的比較
• 變量
• 控制流(if、循環)
• 文件操作
• 執行系統命令
Python腳本的結構
• 運行Python腳本
• 使用解釋器
• 命令行參數
• argparse簡介
練習
練習1——將簡單的Bash腳本轉換爲Python
Bash腳本:
• 列出目錄中的文件
• 按擴展名過濾
• 顯示統計信息
學員將用Python重寫該腳本。
練習2——帶命令行參數的Python腳本
創建一個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:自動化系統命令
主題
在Python中執行Shell命令
• subprocess模塊
• 捕獲輸出
• 錯誤處理
自動化管理任務
• 運行系統命令
• 與cron作業集成
• 爲重複任務編寫腳本
進程管理
• 監控進程
• 簡單的並行執行
練習
練習1——運行系統命令的Python腳本
腳本:
• 運行Unix命令
• 捕獲輸出
• 生成報告
練習2——服務監控
Python腳本:
• 檢查服務狀態
• 收集信息
• 顯示結果
第3天
模塊5:高級自動化與外部服務交互
主題
在Python中使用API
• HTTP請求介紹
• 認證和令牌
• 處理JSON響應
Python用於DevOps自動化
• 從外部服務收集數據
• 與現有工具集成
• 基礎設施腳本編寫
練習
練習1——使用API的Python腳本
腳本:
• 從API收集數據
• 處理信息
• 生成報告
練習2——自動化數據收集
Python腳本:
• 收集系統信息
• 生成JSON或CSV報告
模塊6:構建用於管理的CLI工具
主題
Python項目結構
• 代碼組織
• 函數複用
• 模塊和包
創建CLI工具
• 命令行參數
• 結構化輸出
• 錯誤處理
最終練習
學員將構建一個用於自動化任務的Python CLI工具:
• 分析日誌文件
• 識別錯誤
• 生成統計信息
• 可從命令行運行
課程成果
課程結束後,學員將能夠:
• 將Shell腳本轉換爲Python腳本
• 使用Python自動化系統任務
• 處理日誌和複雜數據
• 構建用於Unix系統管理的CLI工具
最低要求
先決條件
- 具備Unix/Linux操作系統的基礎知識
- 熟悉命令行使用(Shell/Bash)
- 有編寫簡單Shell腳本的經驗(如循環、條件、文件操作)
- 對系統管理概念有一般瞭解者優先
- 無需具備Python經驗
目標受衆
- 在Unix/Linux環境中工作的系統管理員
- 希望提升自動化能力的DevOps工程師
- 使用Shell腳本處理日常任務的工程師和技術專家
- 對從Bash過渡到Python感興趣的IT專業人士
- 希望在Unix環境中更高效自動化工作流的開發人員
客戶評論 (2)
與內容相關的實踐練習確實有助於更好地理解每個主題。此外,以講座開始課程並繼續進行實踐練習的方式很好,有助於將練習與之前介紹的講座內容聯繫起來。
Nazeera Mohamad - Ministry of Science, Technology and Innovation
課程 - Introduction to Data Science and AI using Python
機器翻譯
示例/練習完美適應我們的領域
Luc - CS Group
課程 - Scaling Data Analysis with Python and Dask
機器翻譯