ajout d'une fonctionnalité dans updateall : execution d'un script spécfique pour un serveur donné
51 lines
1.3 KiB
Bash
Executable File
51 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Vérifier que ImageMagick est installé
|
|
if ! command -v convert &> /dev/null; then
|
|
echo "❌ Le programme 'convert' (ImageMagick) est requis mais non installé." >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Vérifier que la commande 'file' est dispo
|
|
if ! command -v file &> /dev/null; then
|
|
echo "❌ La commande 'file' est requise mais non installée." >&2
|
|
exit 1
|
|
fi
|
|
|
|
# Vérifier qu'au moins un fichier est fourni
|
|
if [[ $# -eq 0 ]]; then
|
|
echo "Utilisation : $0 fichier1 [fichier2 ...]"
|
|
echo "Tu peux utiliser des jokers : $0 * img_??"
|
|
exit 1
|
|
fi
|
|
|
|
# Boucler sur tous les fichiers passés en paramètre
|
|
for file in "$@"; do
|
|
# Vérifie que le fichier existe et est un fichier régulier
|
|
if [[ ! -f "$file" ]]; then
|
|
echo "❌ Fichier ignoré (inexistant ou non régulier) : $file"
|
|
continue
|
|
fi
|
|
|
|
# Vérifie le type MIME du fichier (doit être image/png)
|
|
mime_type=$(file --mime-type -b "$file")
|
|
if [[ "$mime_type" != "image/png" ]]; then
|
|
echo "⚠️ Ignoré (pas un PNG selon 'file') : $file"
|
|
continue
|
|
fi
|
|
|
|
dir=$(dirname "$file")
|
|
base=$(basename "$file")
|
|
name="${base%.*}"
|
|
dest="${dir}/${name}.jpg"
|
|
|
|
if [[ -e "$dest" ]]; then
|
|
echo "⏩ Le fichier existe déjà : $dest — conversion ignorée"
|
|
else
|
|
echo "✅ Conversion : $file → $dest"
|
|
convert "$file" "$dest"
|
|
fi
|
|
done
|
|
|
|
echo "✅ Traitement terminé."
|