Le script ~/travail/purge-exports.sh supprime les exports de plus de 30 jours. Il a déjà vidé un mauvais répertoire quand la variable était vide. Réécrivez-le :
#!/usr/bin/env bash et set -euo pipefail
- répertoire en argument obligatoire :
REPERTOIRE="${1:?usage: purge-exports.sh <repertoire>}"
- refus si ce n'est pas un répertoire (
[[ -d "$REPERTOIRE" ]] || { echo "…" >&2; exit 2; })
- fichier temporaire nettoyé en toutes circonstances :
LISTE="$(mktemp)" et trap 'rm -f "$LISTE"' EXIT
find "$REPERTOIRE" -type f -name '*.csv' -mtime +30 -print > "$LISTE" puis suppression par xargs -r rm -f < "$LISTE"
- variables toujours entre guillemets
Validez avec shellcheck purge-exports.sh (depuis ~/travail). Que devient rm -rf $DIR/* si DIR est vide ? → answer vide "rm -rf /*"