J'essaie d'écrire un script que je peux utiliser pour transférer à distance des données de l'ordinateur d'un utilisateur final vers un nouveau que je prépare pour eux. J'ai besoin de transférer des données de plusieurs profils d'utilisateurs, donc je l'ai écrit pour faire défiler les profils utilisateur sur l'ancienne machine, mais je ne suis pas sûr de la syntaxe correcte dans quelques endroits, spécifiquement quelle variable j'ai besoin pour référencer l'utilisateur actuel dossier pendant que le script les parcourt (voir les points d'interrogation dans les répertoires répertoriés ci-dessous). Je l'ai écrit pour copier uniquement les profils utilisateur qui ont été utilisés dans les 90 derniers jours. Je voudrais copier quelques profils tels que Public, Default, etc indépendamment de l'âge, mais je vais probablement ajouter quelques lignes Robocopy pour accomplir cela.Robocopy script pour transférer les données utilisateur de l'ancien PC vers le nouveau PC
Quelqu'un peut-il me conseiller sur ce que la syntaxe doit être où les points d'interrogation apparaissent ci-dessous? Ce serait $ _ dans Powershell, mais je ne suis pas sûr de ce qu'il est dans un fichier batch CMD.
Merci à l'avance,
Andrew
@echo off
Set /p OldPC=Please enter the old PC name:
Set /p NewPC=Please enter the new PC name:
for /D %%D in ("\\%OldPC%\USERS\*") do (robocopy "\\%OldPC%\USERS\?\Desktop" "\\%NewPC%\Users\?\Desktop" /E /Z /W:10 /COPYALL /MAXAGE:90
for /D %%D in ("\\%OldPC%\USERS\*") do (robocopy "\\%OldPC%\USERS\?\Documents" "\\%NewPC%\Users\?\Documents" /E /Z /W:10 /COPYALL /MAXAGE:90
for /D %%D in ("\\%OldPC%\USERS\*") do (robocopy "\\%OldPC%\USERS\?\Favorites" "\\%NewPC%\Users\?\Favorites" /E /Z /W:10 /COPYALL /MAXAGE:90
for /D %%D in ("\\%OldPC%\USERS\*") do (robocopy "\\%OldPC%\USERS\?\Pictures" "\\%NewPC%\Users\?\Pictures" /E /Z /W:10 /COPYALL /MAXAGE:90
Super, merci pour l'info. Je me suis rendu compte que j'avais aussi quelque chose d'erroné ... Je veux complètement ignorer tout profil utilisateur dont la date de modification est antérieure à 90 jours, mais je veux copier tout le contenu des dossiers listés pour tout profil plus récent que ça. De la façon dont je l'ai écrit, je pense qu'il va copier à partir de tous les dossiers des utilisateurs, mais ignorer tout contenu datant de plus de 90 jours. Ai-je raison?Je devine que j'ai peut-être besoin d'une déclaration IF quelque part? – Andrew
Voici une autre idée ... Serait-il plus facile de Robocopy tout le répertoire C: \ Users avec le commutateur/MAXAGE, puis/XD pour exclure les dossiers de profil que je ne veux pas, tels que appdata, etc? – Andrew
@Andrew Pour effacer les choses, essayez-vous de déplacer tout le répertoire du profil utilisateur si l'un de ses fichiers est modifié dans les 90 jours? –