Batch =
xcopy "%userprofile\documents\*.*" "p:\sauvegardes\%computername%" /m /e
/c /h
p: est le disque externe connecté par une commande NET USE au début de
chaque batch.
L'option /m devrait prendre et recopier - en principe - tous les
sous-répertoires quelque soit leur nom......
Pas de souci sur 2 PC distants. Sur le 3ème, je reçois une erreur :
messages :
Accès refusé
Impossible de créer le répertoire p:\sauvegardes\PC_1\Mes vidéos...
Tous les autres fichiers et répertoires du PC_1 sont bien sauvegardés,
sans souci.
Ayant lu la remarque au sujet de la commande CHCP 1252 et des caractères
accentués (sans en comprendre la raison; je viens de lire aujourd'hui
que le mode commande est en CP 850 et Windows en CP 1252...), je me suis
empressé de la rajouter au début de ce batch. Peine perdue... même
punition, même message d'erreur.
Je n'ai pas d'erreur semblable sur les 2 autres PC, pas plus que sur le
mien en XP Pro...(à titre de test)
Quelques idées ou suggestions ?
Grand Merci à tous de votre aide,
François
Question : comment est formaté le disque externe ? Si jamais c'est en
FAT (16,32,etc.) alors, il peut y avoir un problème de longueur du nom
des fichiers (chemins compris). Limité à 255 sur FAT, et 32767 avec NTFS
(en Unicode).
Ensuite, plutôt que XCOPY, tu devrais utiliser ROBOCOPY. Et exclure les
points de jonction (appelés aussi points d'analyse, alias, etc.). Cela
se fait avec l'option /XJ
Pour info, voici la commande que j'utilise, pour sauvegarder un dossier
%USERPROFILE% :
robocopy %USERPROFILE% "%DEST%" /XJ /XD
"%USERPROFILE%\AppData\Local\Microsoft\Windows Mail\Backup"
"%USERPROFILE%\AppData\Local\Microsoft\Windows\Temporary Internet Files"
"%USERPROFILE%\AppData\Local\Temp"
"%USERPROFILE%\AppData\Local\Microsoft\Windows Live\Services\Cache" /MIR
/FFT /S /COPYALL /R:1 /W:1 /ETA /NFL
Pour la doc de Robocopy : http://mclaveau.com/gvrac/robo.html
Je suis parti de la doc de la version XP. Désolé, je n'ai pas pu trouver
l'équivalent sous Vista ; mais il reste l'aide :
robocopy /?
--
@-salutations
--
Michel Claveau
> Bonjour à tous,
> Sur les PC d'une association (4 PC en Vista ed. Familiale) en réseau par CPL,
> j'ai créé un batch qui sauvegarde par xcopy le dossier "Mes documents" de
> chacun des PC sur un disque externe USB connecté à l'un des PC.
>
> Batch =
> xcopy "%userprofile\documents\*.*" "p:\sauvegardes\%computername%" /m /e /c
> /h
%userprofile%
> p: est le disque externe connecté par une commande NET USE au début de chaque
> batch.
> L'option /m devrait prendre et recopier - en principe - tous les
> sous-répertoires quelque soit leur nom......
C'est le paramètre "/E" qui permet la chose.
> Quelques idées ou suggestions ?
Utiliser Robocopy ?
--
Bien à vous. Pierre TORRIS
www.ptorris.com
Merci à tous les 2 pour vos conseils.
L'idée de Robocopy - que je ne connaissais pas - est séduisante. Elle me
paraît toutefois un peu complexe et je ne voudais modifier ces 4 Pc's,
ne serait-ce qu'en installant un nouveau composant, que le moins possible.
J'ai compris depuis que l'erreur vient en fait des 3 raccourcis pour
"Mes Images", "Mes Vidéos" et "Ma Musique" qui sont dans le dossier
%userprofile%\Documents. Je les avais exclus par le paramètre EXCLUDE:.
Cela a bien marché pour Mes Images et Ma Musique mais pas pour Mes
Vidéos à caude du "é" et du Code Page....
Encore merci pour votre aide et vos conseils,
François
Bonjour,
>> %userprofile%
> > C'est le paramètre "/E" qui permet la chose.
> Autant pour moi... finger checks... J'avais corrigé tout seul, mais merci
> quand même, Pierre.
Je me doute bien... juste dire que même pour 1 seule ligne de batch, on
n'a pas le droit à l'erreur. loOol
> Merci à tous les 2 pour vos conseils.
> L'idée de Robocopy - que je ne connaissais pas - est séduisante. Elle me
> paraît toutefois un peu complexe
Basiquement, pas vraiment plus que xcopy. Suffit de comprendre la
syntaxe et d'utiliser les bons paramètres. De plus, vous avez dans le
fil un proMCI de robocopy, spécialiste des scripts en tous genres. ;-)
> et je ne voudais modifier ces 4 Pc's, ne
> serait-ce qu'en installant un nouveau composant, que le moins possible.
Robocopy fait partie de Vista, groupe dans lequel vous postez. :-)
Et avec ces qq 86 Ko, il n'est pas vraiment faramineux d'en placer un
dans le dossier "System32" d'un éventuel XP.
> J'ai compris depuis que l'erreur vient en fait des 3 raccourcis pour "Mes
> Images", "Mes Vidéos" et "Ma Musique" qui sont dans le dossier
> %userprofile%\Documents.
Ce sont des points de jonction. Comme vous l'a dit MCI, avec robocopy,
c'est plus simple, le paramètre /XJ les exclut (tous).
> Je les avais exclus par le paramètre EXCLUDE:. Cela
> a bien marché pour Mes Images et Ma Musique mais pas pour Mes Vidéos à caude
> du "é" et du Code Page....
Vous ne nous aviez pas tout dit donc. En utilisant ce paramètre, vous
utilisez un fichier externe et il faut alors l'éditer en OEM.
> Encore merci pour votre aide et vos conseils,
:-)
> Et avec ces qq 86 Ko, il n'est pas vraiment faramineux d'en placer un
> dans le dossier "System32" d'un éventuel XP.
Attention. La version Vista de robocopy ne fonctionne pas sous XP. Il
faut télécharger la version pour XP & 2003.
Là, par exemple : http://minilien.fr/a0jpbe
(lien de base :
http://www.microsoft.com/downloads/details.aspx?familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd&displaylang=en
)
Bonsoir !
Il n'y a pas d'attention particulière, la version Vista sous XP signale
l'incompatibilité (ou plutôt un message d'erreur) et refuse de
s'exécuter.
Par ailleurs, j'ai écrit "d'en placer un" (pas courant dans mon
jargon), pas de copier une version Vista.
Je pense que si l'intéressé l'est vraiment, il saura faire suite...
> la version Vista sous XP signale l'incompatibilité (ou plutôt un
> message d'erreur) et refuse de s'exécuter.
En fait, c'est plus compliqué.
Déjà, sous Vista, copier le fichier %WINDIR%\system32\Robocopy.exe, sur
un autre disque, ne permet pas de l'exécuter. Lorsqu'on fait ça, et si
on lance la copie, il ne se passe rien. Aucun message, aucun
avertissement, pas de message, pas d'exécution.
Cela vient des MUI (langage). Car, si on copie également
%WINDIR%\system32\fr-FR\Robocopy.exe.mui, cela fonctionne à nouveau.
Idem, si on veut renommer l'exécutable. Il ne faut pas oublier de
renommer le sous-fichier/dossier.
Et, comme XP, n'utilise pas ce système de gestion des langages, cela
explique que les utilitaires normaux de Vista ne fonctionnent pas sous
XP.
> Re !
>
>> la version Vista sous XP signale l'incompatibilité (ou plutôt un message
>> d'erreur) et refuse de s'exécuter.
>
> En fait, c'est plus compliqué.
> Déjà, sous Vista, copier le fichier %WINDIR%\system32\Robocopy.exe, sur un
> autre disque, ne permet pas de l'exécuter. Lorsqu'on fait ça, et si on lance
> la copie, il ne se passe rien. Aucun message, aucun avertissement, pas de
> message, pas d'exécution.
Déjà, sous mes propos, je parlais de la copie sur XP, et ça donne :
"Robocopy.exe n'est pas une application Win32 valide."
Juste pour info, j'ai un autre message : "Accès refusé".
Toutefois, sur un XP d'un client, ce message est précédé de la même
fenêtre que toi. Donc, cela peut varier, selon les configs...
@+
MCI
Re !
Moi aussi, j'ai "Accès refusé" (après le premier mmessage).
Ensuite, ça fonctionne bien :
http://cjoint.com/?cBkz1XwWiB
C'est peut-être à cause du fichier non ... ?
> Robocopy était intégré à Vista
AMHA, rien que cela justifie un passage à Vista. En effet, les
possibilités de Robocopy sont énormes, et particulièrement pratiques.
Par exemple, lorsqu'on sait que l'on peut configurer l'affichage, et que
l'on peut simuler les copies, on comprends comment utiliser Robocopy
pour connaitre les différences entre deux dossiers. Ou, seulement ceux
qui manque dans un dossier, relativement à l'autre. Et, cela, pour un
dossier ou un ensemble de dossiers. Avec, ou non, les sous-dossiers.
Pour tous les fichiers, ou seulement ceux de certains types. En prenant
en compte, ou en ignorant, les points de jonction. etc.
Et, ce n'est qu'un exemple, parmi plein d'autres possibilités.
--
@-salutations
--
Michel Claveau
PS : pour les 20 balles, tu n'as qu'à les donner à l'association des
employés nécessiteux de Microsoft.
Je rentre juste de voyage, et n'ai donc pas pu répondre avant...
Alors, pour comparer deux dossier, avec Robocopy :
@echo off
robocopy %Dossier1% %Dossier2% /S /L /FP /NJH /NJS /NS /NDL
/LOG:differences.txt
type differences.txt
(dans cette version, les points de jonction ne sont pas ignorés).
Merci Michel de ton idée, séduisante au demeurant, mais qui ne résoud
pas - je pense - excatement mon problème...
J'ai donc un dossier énorme 1900 sous répertoires, que j'archive petit à
petit sur CD-Rom...mais je conserve le tout sur mon disque dur. J'en
suis donc aujourd'hui à 6 CD.
Environ 1 ou 2 fois par an, je voudrais continuer mon archivage, càd, ne
graver que les sous-répertoires qui ont été modifiés (très peu), et les
nouveaux.....
Je voudrais donc comparer le répertoire fixe avec les 6 CD actuels, pour
préparer la liste de ce que je dois graver....
Je ne pense pas que Robocopy me permette de comparer le Disque avec la
totalité des 6 CDs...
Merci de tes idées
François
Je vois deux solutions :
- passer au DVD, ce qui permet d'utiliser Robocopy (entre autres).
En plus, ce sera plus rapide, et plus économique.
- ORep (contraction de Objet+Répertoires). Il s'agit d'un module
spécialisé dans la manipulation des fichiers de répertoires. Son
utilisation est incrémentale (d'aucun diraient fonctionnelle). On
enchaîne simplement les commandes. Par exemple on ajoute ou on soustrait
des listes de fichiers, on filtre, on compare deux ensembles, on
copie/détruit/compresse. Etc.
Le (petit) détail, c'est que ORep est un module de Ponx, qui est
un ensemble logiciel très important (en taille, en installation, en
possibilités). Voir http://ponx.org/ponx (mais le site n'est pas à jour,
par manque de temps).