Je met à dispo mon ptit script que j’utilise pour la synchronisation des images dolibarr vers site virtuemart.
prérequis imagemagick
autoriser la connexion ssh distante sans mot de pass
- Il copie toutes les images dolibarr dans un repertoire temporaire
- Il redimensionne si besoin 800 de hateur max et 800 de larg max
- Il met a jour les images par sync
#!/bin/bash
clear
# Creer le dossier temporaire des images redimesionne
mkdir /tmp/img_compresser/ > /dev/null
mkdir /tmp/img_compresser/resized/ > /dev/null
# Copier les fichiers dans un repertoire unique aboresence virtuemart
echo "Recherche en cours ..."
find /var/www/dolibarr/documents/produit/ -name "*.jpg" -exec cp -vu '{}' /tmp/img_compresser/ ;
echo "Recherche termine"
# Redimensionne les images
echo "redimension en cour ..."
cd /tmp/img_compresser/
for i in *;do
largeur=`identify -format '%w' $i`
hauteur=`identify -format '%h' $i`
if [ "$largeur" -gt 800 ] || [ "$hauteur" -gt 800 ]
then
echo ""
echo redimension de $i
mogrify -verbose -resize 800x800> $i
echo ""
else
echo -n "."
fi
done
echo "redimension terminer"
# depalcement les miniatures
echo "Deplacemenet des miniatures"
mv -vu /tmp/img_compresser/*_small* /tmp/img_compresser/resized/
echo "Deplacement termine"
# Synchro image sur le serveur
echo "synchro en cours ..."
rsync -auzrvc --chmod=u=rwx,g=rwx,o=rwx --stats /tmp/img_compresser/ --rsh="ssh -p22" [email protected]:/home/dossier_site_internet_virtuemart/www/components/com_virtuemart/shop_image/product
echo "synchro termine"