Le script
#!/bin/bash
# Sauvegarde datée d'un dossier
SOURCE="${1:-$HOME/Documents}" # 1er argument, sinon Documents
DEST="$HOME/Sauvegardes"
DATE=$(date +%Y-%m-%d)
mkdir -p "$DEST"
tar -czf "$DEST/docs-$DATE.tar.gz" "$SOURCE"
echo "Sauvegarde terminée : $DEST/docs-$DATE.tar.gz"
Règles
- Pas d'espace autour de
=. - Variables entre guillemets :
"$VAR"(noms avec espaces). $1,$2… arguments ;$#leur nombre ;$?code de retour de la dernière commande.set -euo pipefailen tête : arrêt à la première erreur.
Exécuter
chmod +x sauvegarde.sh
./sauvegarde.sh ~/ImagesSuite : conditions et boucles, planifier avec cron.