Compléments à SyncBackFree

Si vous avez parcouru mes favoris logiciels, vous avez peut-être essayé le logiciel SyncBackFree (anciennement SyncBack) qui permet de synchroniser des répertoires. Le programme est tout simplement remarquable mais présente un petit défaut quand vous l'utilisez avec les unités amovibles. En effet, celles-ci peuvent se voir affecter une autre unité logique et Syncback ne le détectera pas.

1ère fonctionnalité : lancement du programme SyncBackFree

Le script " Syncback.wsf " ci-dessous permet de modifier les profils associés au logiciel en testant la présence de chaque répertoire source ou destination sur l'unité amovible connectée. Il lance ensuite automatiquement l'exécutable dont il trouve la commande de lancement depuis le registre avec la commande associée au type de fichier sps (ou en paramètre sinon).

Dans cet usage il suffit simplement de lancer le script.

2ème fonctionnalité : lancement de commandes avant SyncBackFree ou avant l'exécution d'un profil

Dans cette fonctionnalité le script permet d'exécuter un certain nombre de commandes (synchronisation d'un fichier entre 2 répertoires avec changement éventuel de nom ou suppression de fichiers sur condition) avant le lancement du programme ou avant l'exécution d'un profil de sauvegarde.

Ces commandes sont enregistrées dans le fichier «ini» associé, respectivement dans la section [Autorun] ou dans la section [profilname] du nom du profil. Un fichier de log est produit de nom «syncback.log». Celui-ci est réinitialisé en conservant la version précédente si sa taille dépasse une limite.

En exécution avant un profil, le script doit recevoir 2 paramètres :

  • le nom du profil (variable p=)

  • la destination de sauvegarde (variable d=)

conformément à la capture ci-dessous :

La syntaxe d'une commande de synchronisation est la suivante :

Sync<n>=<Nom du fichier source complet>,[<répertoire cible>][,<nom du fichier cible>]

  • Si le répertoire cible n'est pas précisé, le répertoire du fichier source sera utilisé (dans ce cas le nom du fichier cible doit être différent du nom du fichier source...)

  • Si le nom du fichier cible n'est pas précisé, le nom du fichier source sera utilisé (dans ce cas le répertoire cible doit être différent du répertoire source...)

  • Le nom du fichier source peut comporter un caractère "*" auquel cas tous les fichiers sélectionnés seront recopiés «à plat» c'est à dire sans les sous-répertoires dans le répertoire cible

La syntaxe d'une commande de suppression de fichiers est la suivante :

Purge<n>=<répertoire>,<regex>,max=<nbr>|age=<nbr>

  • <répertoire> est le nom du répertoire où traiter les fichiers (les variables d'environnement sont reconnues). Le programme ne parcourt pas les sous-répertoires

  • <regex> est une expression régulière permettant de sélectionner des fichiers

  • max=nbr pour ne conserver que <nbr> fichiers ou age=nbr pour ne conserver que les fichiers modifiés depuis moins de <nbr> jours

Le script est fourni avec un fichier « ini » exemple, un fichier de « log » et la bibliothèque de fonctions " Tools.vbs " à déposer dans le même répertoire que le script

Télécharger le fichier « Syncback.zip »