Aller au contenu
Zebulon
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

Attribut EXCLUDE de xcopy dans CMD : >RESOLU<


rv31

Messages recommandés

Bonsoir,

Je n' arrive pas à employer correctement l' attribut EXCLUDE dans une ligne de xcopy ; j' ai toujours un message d' erreur (et sur ce sujet Google fournit des pages concernant Linux).

 

Je voudrais simplifier la partie d' un fichier batch qui copie les sous-répertoires de "Mes documents" que je veux sauvegarder (sur un DD externe P:\): c' est-à-dire tout "Mes documents" excepté le sous-répertoire "Logs".

Jusqu' à maintenant, je copiais chacun de ces sous-répertoires par une ligne xcopy:

Xcopy C:\"Documents and Settings"\rh\"Mes documents"\"Download"\*.* P:\Sauvegarde\"0-Telechargements" /d /i /q /y /s

xcopy C:\"Documents and Settings"\rh\"Mes documents"\"Mes eBooks"\*.* P:\Sauvegarde\"Mes documents"\"Mes eBooks"\ /d /i /q /y /s

xcopy C:\"Documents and Settings"\rh\"Mes documents"\"Mes images"\*.* P:\Sauvegarde\"Mes documents"\"Mes images" /d /i /q /y /s

xcopy C:\"Documents and Settings"\rh\"Mes documents"\"Images_Captures"\*.* P:\Sauvegarde\"Mes documents"\"Images_Captures" /d /i /q /y /s

 

Je voudrais donc remplacer ces lignes par une seule pour obtenir le même résultat ; elle devrait ressembler à:

 

Xcopy C:\"Documents and Settings"\rh\"Mes documents"\*.* P:\Sauvegarde\"Mes documents" /d /i /q /y /s /EXCLUDE:Logs

Mais ça ne marche pas. Je ne trouve pas la bonne manière d' employer EXCLUDE.

 

Merci pour toute aide .

 

-------------------------------------------------------------------

-------------------------------------------------------------------

-------------------------------------------------------------------

 

J' ai été aidé par une réponse > ici < , mais sutout par > cette page de ZEBULON <.

 

Merci :P

 

-------------------------------------------------------------------

-------------------------------------------------------------------

-------------------------------------------------------------------

Modifié par rv31
Lien vers le commentaire
Partager sur d’autres sites

Hé, hé, un petit coup de Zebulon sur pcastuce ne peut pas faire de mal ... :P:P

 

N.B. : combien de fois il faudra répéter que les guillemets (pour les noms longs (LFN) sous DOS) doivent encadrer TOUT le chemin y compris le disque.

Modifié par O.Fournier
Lien vers le commentaire
Partager sur d’autres sites

Merci de l' intervention, O.Fournier .

 

N.B. : combien de fois il faudra répéter que les guillemets (pour les noms longs (LFN) sous DOS) doivent encadrer TOUT le chemin y compris le disque.

:P Vrai, j' avais lu et retenu cette indication, il y a quelques semaines ... mais je n' ai pas encore corrigé le fichier et ce n' était pas le moment de faire des essais; avec un peu de malchance, je n' aurais peut-être pas englobé ce qu' il faut . (Mais, ça marche quand même :P ... et pour simplifier, je pensais mettre, quand tout sera au point, des "noms courts").

 

Je n' en suis pas là, mon expérience a marché ce matin.

Finalement, j' arrive à utiliser EXCLUDE correctement dans la fenêtre CMD; pour la même ligne dans un fichier *.bat , ça ne marche pas ! (le fichier contenant les repertoires à ignorer ne peut être lu).

 

...me reste encore beaucoup à apprendre :-P

Lien vers le commentaire
Partager sur d’autres sites

Essaies donc ça dans un batch à suffixe .CMD

Xcopy "C:\Documents and Settings\rh\Mes documents\*.*"  "P:\Sauvegarde\Mes documents" /d /i /q /y /s /EXCLUDE:Logs.txt

 

Le DOS/CMD ne peut "exclure" un répertoire, mais seulement un(des) fichier(s) ... et ton "log" était sans suffixe donc pris pour un répertoire.

 

Tiens, essaies ça aussi pour un répertoire logs contenant les fichiers à exclure : .../exclude:logs\*.* (SGDG, je n'ai pas essayé ...).

Modifié par O.Fournier
Lien vers le commentaire
Partager sur d’autres sites

Merci de m' avoir relancé, j' avais abandonné ... et je viens de trouver !

 

Après avoir compris la solution (lien ZEBULON), je me suis fait un repertoire "ABC" (plusieurs sous-répertoires et des fichiers ; mais le tout beaucoup moins lourd que "Mes documents") pour l' expérience et donc ma ligne est différente de la 1re que j' avais imaginé. De plus, j' enregistre dans une partition J:\a\

 

Il faut d' abord préparer un fichier texte auquel se réfère EXCLUDE . Ce fichier contient des chaînes à raison d' une par ligne : ici chaque chaîne de caractère est le nom du répertoire à ne pas copier. Je me suis demandé où placer ce fichier ? La réponse de ZEBULON spécifie qu' il peut se trouver dans l' ensemble à copier puisqu' on peut l' exclure lui-même de la copie ...

Mon fichier texte s' appelle exc.txt et il contient deux lignes ainsi:

\Ma musique\

\Mes eBooks\

 

Dans la fenêtre CMD, je me place dans "Mes documents" et je tape la commande xcopy abc ... et ça marche (= sauvegarde sélective).

 

image1433ha.jpg

 

 

 

Pour le fichier batch , l' erreur que j' ai commise, c' est de le placer sur le bureau l' attribut EXCLUDE ne trouvait pas exc.txt

 

xcopy C:\"Documents and Settings"\rh\"Mes documents"\abc /s /exclude:exc.txt j:\a

 

(La ligne est correcte = en supprimant EXCLUDE, la sauvegarde complète se fait)

 

A partir du moment où j' ai eu enregistré le fichier batch dans "Mes documents" avec un raccourci sur le bureau , ça a marché. A ce moment là le fichier batch contient:

 

xcopy abc /s /EXCLUDE:exc.txt j:\a

 

Il ne me reste plus qu' à adapter pour remplacer le "dispostif" actuel qui sauvegarde et éteint.

...euh , je m' occupe aussi des guillemets !

Merci, bonne nuit ! :P

Modifié par rv31
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous publiez en tant qu’invité. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...