Batch : Sauvegarde automatique de fichiers

Ce tutoriel montre comment réaliser une sauvegarde automatique de dossiers avec horodatage à l’aide de xcopy ou robocopy (selon votre version de Windows). Vous pouvez planifier l’exécution via le Planificateur de tâches Windows.

Copier un dossier avec xcopy

Commande de base pour copier un répertoire source vers une destination. Voir référence dans la liste des commandes.

@echo off
xcopy "C:\Sources" "D:\Backups" /E /I /Y
Paramètre utiles Explications
/E Inclut sous-dossiers, même vides
/I Suppose que la destination doit être un répertoire.
/Y Pas de confirmation

Ajouter l’horodatage à la destination

On insère la date dans le nom du dossier de sauvegarde (format AAAA-MM-JJ). Voir extraction date dans date & heure.

@echo off
set yyyy=%date:~6,4%
set mm=%date:~3,2%
set dd=%date:~0,2%
set dest=D:\Backups\%yyyy%-%mm%-%dd%

xcopy "C:\Sources" "%dest%" /E /I /Y
echo Sauvegarde terminée dans "%dest%"

Robuste et rapide avec robocopy (si disponible)

robocopy gère mieux les grosses volumiés et les reprises. Ici, on crée un log et on exclut le dossier temp.

@echo off
set yyyy=%date:~6,4%
set mm=%date:~3,2%
set dd=%date:~0,2%
set dest=D:\Backups\%yyyy%-%mm%-%dd%
set log=D:\Backups\logs\backup_%yyyy%-%mm%-%dd%.log

if not exist "D:\Backups\logs" md "D:\Backups\logs" 

robocopy "C:\Sources" "%dest%" /E /R:2 /W:2 /XD "C:\Sources\temp" /LOG+:%log%
if errorlevel 8 (
   echo Erreur de sauvegarde - voir "%log%"
   exit /b 1
) else (
   echo Sauvegarde OK - voir "%log%"
)

Vérification de l'existence du répertoire de logs

Vérification de l'existence du dossier avec if not exist

if not exist "D:\Backups\logs" md "D:\Backups\logs"

 

X.com Facebook Email

Posté le 29-10-2025