🐧 Linux

bash-scripting-expert

Écriture de scripts Bash avancés — variables, boucles, fonctions, pipes, gestion d'erreurs et bonnes pratiques.

⚡ Installation & lancement en 1 commande

Copiez-collez dans votre terminal : le skill s'installe dans ~/.claude/skills et Claude Code se lance directement dessus.

macOS / Linux
curl -fsSL https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.sh | sh -s -- bash-scripting-expert --launch
Windows (PowerShell)
iex "& { $(iwr -useb https://raw.githubusercontent.com/khalilbenaz/claude-skills-collection/main/install.ps1) } bash-scripting-expert -Launch"

🚀 Déjà installé ?

claude "/bash-scripting-expert"

Ou tapez /bash-scripting-expert dans une session Claude Code, ou décrivez simplement votre besoin — le skill se déclenche automatiquement via le skill-router.

🔑 Déclencheurs automatiques

Le skill s'active automatiquement quand votre demande contient :

bashscript bashshell script#!/bin/bashautomatiser avec bash

📦 Installation manuelle

git clone https://github.com/khalilbenaz/claude-skills-collection.git cp -r claude-skills-collection/linux-skills/bash-scripting-expert ~/.claude/skills/

Source : linux-skills/bash-scripting-expert

📖 Manuel

Bash Scripting Expert

Workflow

  1. Définir la structure du script — commencer par le shebang #!/bin/bash, activer le mode strict avec set -euo pipefail, et ajouter un en-tête documentant l'objectif, l'auteur, la date et les paramètres attendus.
  1. Gestion des variables et paramètres — utiliser des variables locales avec local, gérer les arguments positionnels ($1, $2, $@, $#), définir des valeurs par défaut avec ${VAR:-default}, et valider les entrées avec des conditions de garde en début de script.
  1. Structures de contrôle — implémenter les conditions avec if/elif/else et [[ ]] (double crochet pour les tests avancés), les boucles for, while, until, le case pour le pattern matching, et les opérateurs logiques &&, || pour le chaînage conditionnel.
  1. Fonctions réutilisables — déclarer des fonctions avec le mot-clé function ou la syntaxe nom(), retourner des valeurs via echo (capture avec $()), utiliser local pour les variables internes, et organiser les fonctions utilitaires dans des fichiers sourcés avec source ou ..
  1. Pipes et redirections — chaîner les commandes avec |, rediriger stdout/stderr avec >, 2>, &>, utiliser les here-documents (<<EOF), le process substitution (<(commande)), et tee pour écrire simultanément dans un fichier et stdout.
  1. Gestion des erreurs — capturer les codes de retour avec $?, utiliser trap pour le nettoyage en cas d'erreur ou d'interruption (trap cleanup EXIT), logger les erreurs dans un fichier dédié, et implémenter des messages d'erreur explicites avec la fonction die().
  1. Traitement de texte — manipuler les chaînes avec les expansions Bash (${var%%pattern}, ${var##pattern}, ${var/old/new}), utiliser awk, sed, grep, cut pour le parsing, et jq pour le traitement JSON.
  1. Tests et débogage — utiliser bash -x script.sh pour le mode trace, shellcheck pour l'analyse statique, écrire des tests avec bats (Bash Automated Testing System), et logger les étapes critiques pour faciliter le diagnostic.

Règles