Skip to main content

writing-bash-scripts

Create and refactor Bash scripts following conventions (strict mode, fct_ naming, quoting). Includes shellcheck linting. Use when creating shell scripts, refactoring existing scripts, debugging shell errors, or linting scripts.

معلومات المصدر

المستودع
archibate/dotfiles-opencode
آخر نشاط في المصدر
١٩ فبراير ٢٠٢٦ في ١١:٢٣
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
١٠٨
التفرعات
٢١

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

مستكشف الملفات
5 ملفات

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
writing-bash-scripts
description
Create and refactor Bash scripts following conventions (strict mode, fct_ naming, quoting). Includes shellcheck linting. Use when creating shell scripts, refactoring existing scripts, debugging shell errors, or linting scripts.
# Bash Use this skill whenever the user asks to create/update/refactor a Bash script (`.sh`) or lint shell scripts. ## Defaults - Shebang: `#!/usr/bin/env bash` - Strict mode: `set -Eeuo pipefail` - Functions: `fct_<descriptive_snake_case>() { ... }` - Variables: quote expansions like `"${var}"`, prefer `printf`, use `readonly` for constants and `local` inside functions ## Workflow ### Creating/Refactoring Scripts 1. Copy `scripts/pref_bash_script_template.sh` to the target path and rename it. 2. Update the SCRIPT INFO / USAGE header blocks. 3. Implement behavior in `fct_execute_this`, keep `fct_main` + `trap` structure. 4. Follow the detailed conventions in `references/pref_bash.md`. 5. Run shellcheck linting (see below). ### Linting Scripts Run shellcheck on scripts using the provided wrapper: ```bash # Lint all scripts in scripts/ directory (default) .opencode/skill/bash/scripts/run_shellck.sh # Lint specific files or directories .opencode/skill/bash/scripts/run_shellck.sh path/to/script.sh .opencode/skill/bash/scripts/run_shellck.sh scripts/ other/dir/ ``` The linting script: - Automatically detects shell scripts by extension (`.sh`, `.bash`, `.zsh`) or shebang - Exits non-zero on shellcheck failures - Defaults to scanning `scripts/` when no arguments provided See `references/pref_bash.md` section 14 for shellcheck integration details.
عرض على GitHub