May 10, 200521 yr Salut les Inpactiens je me creuse la tête sur un batch de sauvegarde tout simple que voici: REM création du log set log="d:\destination\sauvegarde.log" echo Sauvegarde demarree a >%log% time /T >>%log% date /T >>%log% REM Copie des dossiers echo Liste des fichiers qui n'ont pas ete copies: >>%log% echo ++++++++++++++++++++++++++++++++++++++++++ >>%log% xcopy d:\origine d:\destination /E /V /C /F /R /Y /D /I 2>>%log% REM Commentaires fin de copie echo Sauvegarde terminee a >>%log% time /T >>%log% date /T >>%log% mon problème étant que dans mon log, je me retrouve avec des lignes de "accès refusé" par exemple, mais sans le nom de fichier concerné à côté, du coup, il ne sert à rien, ce log. J'ai testé avec les redirections 1>> et 2>>, mais je ne parviens pas à les combiner pour obtenir un vrai log d'erreurs. Si quelqu'un a une idée pour me dépatouiller Merci
May 10, 200521 yr Tu utilises le commande xcopy avec tous ces paramètres. En as tu vraiment besoin? essayes sans le /C pour vérifier d'ou vient l'erreur. As-tu les droits sur la destination? En général, xcopy D:\Source\*.* D:\Destination\*.* /E /C suffit
May 11, 200521 yr Author eh bien oui, j'ai besoin de /V pour vérifier que le fichier est bien inscrit (il s'agit d'une sauvegarde, tout de même) /F pour avoir adresse+nom du fichier dans mon log /R des fois qu'un des fichiers à remplacer soit en lecture seule /Y pour répondre oui automatiquement en cas d'écrasement de fichier /D pour ne copier que les fichiers qui ont été modifiés depuis le dernier backup /I bon j'avoue, je peux le virer, vu que mon rep. destination existe déjà. mais mon problème ne se situe pas là, mais au niveau de la redirection des erreurs. Par exemple dans le cas d'un fichier sur lequel l'opérateur de sauvegarde n'a pas les droits, j'aimerais voir "d:\origine\fichier.ext Accès refusé" dans mon log. Or , avec mon batch actuel, j'ai droit à la liste de TOUS les fichiers traités, ce qui ne m'intéresse pas du tout. Si j'utilise 2>>%log% je n'obtiens dans mon log que la liste des erreurs (Accès refusé) Voyez mon problème ? Bon, une pause
May 11, 200521 yr essaye ca plutot qu'un simple xcopy: for %%i IN (d:\origine\*.*) DO ( xcopy %%i D:\Destination /V /F /R /Y /D 2>>%log% ) il sera peut etre plus bavard pour les erreurs Edited May 11, 200521 yr by houmiak
May 12, 200521 yr Author Merci pour ta suggestion, houmiak, par contre, il y a une coquille dans le potage: les fichiers dont le nom comporte des espaces ne sont pas copiés: j'obtiens un joli "nombre de paramètres non valide" Je ne vois pas comment contourner le problème... si t'as une idée
May 13, 200521 yr Oui j'ai une idée, faut juste rajouter les guillemets : for %%i IN (d:\origine\*.*) DO ( xcopy "%%i" D:\Destination /V /F /R /Y /D 2>>%log% ) Ca devrai mieu fonctionner
May 13, 200521 yr Author eh bien, ça fonctionne, et ça me la coupe moi qui tentais (en vain) de rajouter les guillemets en concaténant genre: set %i="+%i+" alors que c'était tout simple. Merci à toi, pro du batch
Archived
This topic is now archived and is closed to further replies.