bash-pro
編寫生產環境就緒的 Bash 腳本
編寫安全、可測試的 Bash 腳本以進行自動化需要防禦性編程模式。本技能提供關於嚴格錯誤處理、安全輸入驗證、使用 Bats 測試以及 CI/CD 整合的專業指導。
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "bash-pro". 編寫一個腳本,備份目錄並建立時間戳記的歸檔
النتيجة المتوقعة:
一個完整的 Bash 腳本,包含:set -Eeuo pipefail 嚴格模式、用於 -s (來源) -d (目的地) -h (幫助) 的 getopts、時間戳記備份檔名、具有適當錯誤處理的 tar、用於臨時檔案的清理 trap、使用 DRY_RUN 變數的乾跑模式,以及全面的 --help 輸出
استخدام "bash-pro". 建立一個腳本來監控磁碟使用率並在超過閾值時發出警報
النتيجة المتوقعة:
一個監控腳本,包含:df 命令解析、閾值驗證、帶有時間戳記的結構化日誌、syslog 整合、對遺失命令的優雅處理,以及透過環境變數設定的可配置警報級別
التدقيق الأمني
آمنThis is a prompt-only skill that provides guidance on defensive Bash scripting. Static analysis scanned 0 files (0 lines) and detected no suspicious patterns or risk factors. The skill contains no executable code and only provides instructional content for writing safe, production-grade shell scripts. No command injection, credential access, or malicious patterns detected.
ماذا يمكنك بناءه
建立 CI/CD 腳本的 DevOps 工程師
建立穩健的部署和建置腳本,優雅地處理錯誤、清理臨時資源,並與 GitHub Actions 整合進行自動化測試。
編寫系統工具的開發人員
建置具有適當幫助文件、參數驗證和日誌記錄的命令行工具,可在生產環境中安全使用。
審查 Shell 腳本的網站可靠性工程師
使用 ShellCheck 和防禦性編程模式審核現有的 Bash 腳本,找出安全性漏洞、可移植性問題和最佳實踐合規性。
جرّب هذه الموجهات
編寫一個 Bash 腳本來 [描述任務]。包含嚴格模式、使用 getopts 的參數解析、適當的錯誤處理,以及 --help 選項。
建立一個 GitHub Actions 工作流程,使用 ShellCheck 檢查 Bash 腳本、使用 shfmt 格式化,並運行 Bats 測試。包含跨多個 Bash 版本的矩陣測試。
編寫一個安全處理使用者輸入檔案的 Bash 腳本。包含正確的引號處理、使用 traps 的臨時檔案清理、輸入驗證和 NUL 安全的檔案處理。
審查這個 Bash 腳本的安全性問題、錯誤處理缺口和可移植性問題。識別具體的 ShellCheck 警告並提供修復方案: [在此貼上腳本]
أفضل الممارسات
- 始終在腳本開頭啟用嚴格模式:set -Eeuo pipefail 以捕獲錯誤和未定義變數
- 引用所有變數展開:使用 "$var" 而非 $var 以防止單詞分割和萬用字元展開
- 使用 traps 進行清理:trap 'rm -rf "$tmpdir"' EXIT 確保臨時檔案始終被移除
تجنب
- 使用 for f in $(ls ...) - 會導致單詞分割錯誤;請改用 find 搭配 -print0 和 read -r -d ''
- 在停用 | pipefail 的情況下忽略退出程式碼 - 始終檢查 set -o pipefail 並驗證關鍵命令的退出狀態
- 對使用者輸入使用 eval - 嚴重的安全風險;請改用陣列進行動態命令建構