Soucis avec rsync sur sauvegarde de fichier par extentions

Bonjour,

J’ai déjà quelques script rsync qui tournent sans soucis,
mais la… je tombe sur un “hic” ! :slightly_smiling:

en gros… sur une machine A j’ai une arbo de plusieurs dossiers, dans ses dossiers, j’ai une multitude de fichiers de tout type…

Je voudrais “traiter” uniquement certains fichiers (suivant l’extentions) sur une machine B

j’ai donc fait (pour les *.jpg):

Avec ca aucun soucis mes fichier *.jpg sont correctement mis a jour et les fichier *.jpg n’existant plus sur A sont effacé de B !

Cool !, bin non… car il gere aussi les dossier même si il n’y a aucun fichier *.jpg, du coup sur B je me retrouve avec une multitude de sous-dossiers vide… pas glop !

j’ai donc crée une liste des fichiers a traiter pas un :

puis derriere:

Super !! mes fichiers sont bien tranférés et dans leur sous-dossier respectif !

Oui mais non :frowning:

Avec ca, les fichiers qui n’existent plus sur A reste quand meme sur B !
seul ceux que je precise dans ma liste sont testé (logique)

du coup je tourne en rond… :cry:
comment dire a rsync de NE PAS s’occuper des dossier qui n’ont rien a voir avec le patern que je lui donne (*.jpg) ?!

ou Comment gerer rsync d’un point de vu “fichier” et pas “dossier” …

avant de me lancer dans un script de folie avec echange dans les 2 sens, comparaison puis traitement (ce que devrait faire rsync…), j’en appel a vos astuces, experiences…

Merci d’avance pour toutes aides sur ce soucis !

Je me répond a moi même :slightly_smiling:

la solution passe par l’option ‘–prune-empty-dirs’, que je n’avais pas dans les version d’avant (ou pas vu :slightly_smiling:)

a utiliser avec précaution !!

ma syntaxe est donc: rsync -a -m --del -vv --include='*.jpg' --include="*/" --exclude "*" host_source/ host_dest/

a vraiment tester avant de mettre en prod…

Pas grand chose à voir avec de la programmation, je déplace dans Support.

Et puisque tu sembles avoir résolu ton problème => coche verte :wink: