[Batch] Récupération erreur de copie fichier.

[Résolu/Fermé]
Signaler
Messages postés
1706
Date d'inscription
lundi 19 février 2007
Statut
Contributeur
Dernière intervention
12 février 2016
-
Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
-
Bonjour,
j'ai fait un Batch pour copier des fichiers de différents dosiers dans un dossier unique à partir d'un fichier texte.

Le problème que j'ai est que j'ai des erreurs de copie de certains fichiers et j'aurai voulu savoir comment faire pour récupérer dans un fichier txt les erreurs de copie.
Je met le code au cas ou.

@echo off 
echo "Enter File list Path"  
set /p FilePath= 
echo "Enter Local Drive" 
set /p LocalDrive= 
echo "Enter Destination Path" 
set /p FileDest= 
for /f "delims=" %%i in ('type %FilePath%') do ( 

copy "%%i" "%FileDest%" 1> logerreur.txt 

) 


comme je fait une bouche le
>1 logerreur.txt 
ne marche pas il se fait écraser constamment.

Cordialement
than



Wake me, when you need me ...

2 réponses

Messages postés
1706
Date d'inscription
lundi 19 février 2007
Statut
Contributeur
Dernière intervention
12 février 2016
146
Bon bah auto réponse j'ai trouvé finalement.
si ça intéresse voila la réponse :
@echo off
echo "Enter File list Path" 
set /p FilePath=

echo "Enter Destination Path"
set /p FileDest=
for /f "delims=" %%i in ('type %FilePath%') do (
IF EXIST "%%i" (
copy "%%i" "%FileDest%" )
IF NOT EXIST "%%i" (echo "%%i" >> errorlog.txt)

)

le >> permet d'ajouter la ligne à un fichier.

Merci zipe31 pour ta réponse rapide et ton aide :)
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41713 internautes nous ont dit merci ce mois-ci

Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 418
Salut,

Le dos n'est pas ma tasse de thé, mais en toute logique est-ce que :

copy "%%i" "%FileDest%" 2> logerreur.txt 
ou

copy "%%i" "%FileDest%" 1> logerreur.txt  2>&1

Ne ferait pas l'affaire ?

Messages postés
1706
Date d'inscription
lundi 19 février 2007
Statut
Contributeur
Dernière intervention
12 février 2016
146
Non ça ne marche pas il efface le fichier à chaque nouvelle copie donc il reste que la dernière ligne.
(et il ne me dis dans le log que '1 fichier copié' ou 'Le fichier spécifié est introuvable.' si le dernier fichier copié est manquant.)
Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 418
Et avec un double chevron ">>" :

copy "%%i" "%FileDest%" 2>> logerreur.txt
Messages postés
1706
Date d'inscription
lundi 19 février 2007
Statut
Contributeur
Dernière intervention
12 février 2016
146
ça me produisait bien le log mais de toute la manipulation sans me donner le nom du fichier incriminé : juste copié ou erreur.
Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 418
Peut être qu'en rajoutant une sortie verbeuse (/V) à la commande "copy" :

copy /V "%%i" "%FileDest%" 2>> logerreur.txt