Bonjour,
Je souhaite me créer un petit fichier .bat qui me permettrait de synchroniser les fichiers présents sur mon NAS avec un dossier de mon PC afin d'avoir toujours sur mon pc les fichiers de mon NAS et que quand je les modifient que ce soit sur le NAS ou sur le PC, cela se synchronise en gardant les fichiers les plus récents.

Donc pour cela j'ai commencé à programmé mon fichier .bat mais je suis assez débutant !

@echo
:Loop
for /f %%i in ('dir C:\Users\doria\OneDrive\NAS /b /a:-d') do (

if NOT exist C:\Users\doria\Desktop\LAPTOP\%%i ( del C:\Users\doria\OneDrive\NAS\%%i )

)
xcopy C:\Users\doria\Desktop\LAPTOP C:\Users\doria\OneDrive\NAS /E /H /R /Y /I /D
xcopy C:\Users\doria\OneDrive\NAS C:\Users\doria\Desktop\LAPTOP /E /H /R /Y /I /D
TimeOut 60
Goto Loop
Pause
Exit

La première partie de mon .bat va aller vérifier dans mon nas quels fichiers existent et les comparer avec les fichiers dans mon pc afin que si un fichier n'existe pas sur le pc mais soit existant sur le nas il soit supprimé (comme ca je peux supprimer des fichiers sur le pc et cela se répercute sur mon nas)
Le problème est que la, seul les fichiers sont reconnues et pas les dossiers.. et le deuxième problème c'est que les fichiers qui comportent un "espace" dans leurs noms ne sont pas reconnues non plus..

La deuxième partie de mon .bat va copier les dossiers/fichiers de mon pc vers le nas et du nas vers le pc en gardant les fichiers les plus récent donc pour ca pas de problème.
Ensuite le processus se répète toutes les 60 secondes afin que la synchronisation soit faite au fur et à mesure la pas de problème non plus !


Donc j’espère avoir été clair même si c'est difficile !
Mon problème vient donc particulièrement de cette partie du code:

for /f %%i in ('dir C:\Users\doria\OneDrive\NAS /b /a:-d') do (

if NOT exist C:\Users\doria\Desktop\LAPTOP\%%i ( del C:\Users\doria\OneDrive\NAS\%%i )

)

Merci pour votre aide !