SyncBackFree
Mise à jour du 27/06/2025
Mise à jour du 27/06/2025
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 gratuit 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.
Le script est fourni avec un fichier « ini » exemple, un fichier de « log », la bibliothèque de fonctions "Tools.vbs" et un fichier hta de « splash screen » à déposer dans le même répertoire que le script.
Le « splash screen » est activable/désactivable via le paramètre "Splash" dans la section "general" du fichier INI :
0 : Pas de splash screen
1 : Splash screen au lancement du programme
2 : Splash screen au lancement du programme et en exit de profils
Le script Syncback.wsf 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, lancer le script sans paramètre.
Dans cette fonctionnalité le script permet d'exécuter un certain nombre de commandes 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 (cf. screenshot):
le nom du profil (variable p=)
la destination de sauvegarde (variable d=)
Sync<n>=fsource,[rcible][,fcible]
fsource Nom complet du fichier source à synchroniser. S'il compter un caractère "*", tous les fichiers sélectionnées seront synchronisés sans les sous-répertoires.
rcible Nom du répertoire cible où synchroniser le fichier. Si absent, le répertoire source est utilisé mais le nom du fichier "cible" doit être différent du nom "source"
fcible Nom du fichier cible. Si absent, le nom du fichier source est utilisé mais le répertoire cible doit être différent du répertoire source.
Purge<n>=répertoire,regex,max=<n>|age=<n>
répertoire Nom du répertoire où traiter les fichiers. Le programme ne parcourt pas les sous-répertoires
regex Expression régulière permettant de sélectionner des fichiers
max=<n> Pour ne conserver que <n> fichiers
age=<n> Pour ne conserver que les fichiers modifiés depuis moins de <n> jours
Cmd<n>=commande
commande programme (un «.exe») à lancer avec ses paramètres. Le script ajoute automatiquement les guillemets pour encadrer le programme.
/!\ Windows Defender détecte le script comme une menace à cause de cette possibilité d'exécution de commandes qui sont en dehors du script : il ne détecte pas qu'elles sont dans le fichier INI à côté et interprète cela comme des actions à distance !
Note : les variables d'environnement sont reconnues dans le nom des fichiers ou des répertoires et dans les commandes