Auteur |
Message |
Laddy
Inscrit le: 30 Juin 2008
Messages: 4 135
|
[Résolu]question xcopy
Revue du message précédent :Je ne sais pas si avec un déplacement tu garderas les ACL. C'est malin de penser à cela maintenant La commande interne est move : http://www.batchclipboard.info/wiki/doku.php?id=commandline:commande_move
|
Mar 9 Fév 2010 - 15:46 |
|
|
keben
Inscrit le: 08 Fév 2010
Messages: 16
|
[Résolu]question xcopy
oui je connaissais move, mais si j'utilise cette commande je perds mes ACL et c'etait principalement ça qui m'intéressait dans la fonction XCOPY
|
Mar 9 Fév 2010 - 15:47 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
Non, pas possible à ma connaissance Xcopy est ce qu'il te faut.
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mar 9 Fév 2010 - 16:10 |
|
|
keben
Batcheur Avancé
Hors ligne
Inscrit le: 08 Fév 2010
Messages: 16
Niveau en programmation: Niveau en graphisme: Point(s): 0 Moyenne de points: 0,00
|
[Résolu]question xcopy
Oui je sais, mais ça n'est pas bien grave, le but est atteint.. merci encore, je livre la version finale, sait on jamais que ça intéresse quelqu'un...j'ai juste rajouté %folder% afin qu'il me garde le répertoire initiale dans la copie (sinon il me copiait l'intérieur du dossier mais pas le conteneur principal) End of the story...thanks a lot Laddy!!! Citation:@echo off pushd %CD% set source= set /p source=entrer le nom exact du dossier source: if {%source%}=={} goto :end set folder= set /p folder=entrer le nom du dossier de destination: if {%folder%}=={} goto :end echo d|xcopy "DossierA\%source%" "DossierB\"%folder%"\%source%" /e /o /i echo la copie des fichiers s'est bien terminée Pause :end endlocal
|
Mar 9 Fév 2010 - 16:17 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
etrange ligne ;: echo d|xcopy "DossierA\%source%" "DossierB\"%folder%"\%source%" /e /o /i correction je pense echo d|xcopy "DossierA\%source%" "DossierB\%folder%\%source%" /e /o /i et d apres ta ligne tu fais le contraire ce qui est demandé....enfin si ça fonctionne pour toi... A quoi sert le echo d ???
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mar 9 Fév 2010 - 16:49 |
|
|
Contenu Sponsorisé
|
[Résolu]question xcopy
|
Aujourd’hui à 14:57 |
|
|
keben
Batcheur Avancé
Hors ligne
Inscrit le: 08 Fév 2010
Messages: 16
Niveau en programmation: Niveau en graphisme: Point(s): 0 Moyenne de points: 0,00
|
[Résolu]question xcopy
je confirme le "%folder", car sinon je ne pouvais pas rentre un nom comportant des espaces entre guillemet (doublon des guillemets dans la syntaxe finale). l'echo D.... humm dois je l'avouer je n'en sais rien...reliquat d'une des nombreuses sources qui ont abouti à ce petit bout de batch....mais je peux parfaitement entendre qu'il ne sert à rien.... la déco peut être
|
Mar 9 Fév 2010 - 17:20 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
retire le ainsi que setlocal, end local autant utiliser mon code qui est fonctionnel....
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mar 9 Fév 2010 - 17:25 |
|
|
keben
Batcheur Avancé
Hors ligne
Inscrit le: 08 Fév 2010
Messages: 16
Niveau en programmation: Niveau en graphisme: Point(s): 0 Moyenne de points: 0,00
|
[Résolu]question xcopy
moi again ! j'ai fais comme tu me l'as conseillé et j'ai utilisé ton code avec une petite modification ( "%folder") pour pouvoir entrer des noms comportant des espaces lors de la requête pourvu que je mette des guillemets : Chemin folder : "toto tata" Par contre en appliquant le même principe à la source, je n'arrive pas à rentrer des noms comportants des espaces pour le source de destination?? il me mets : nombre de paramètres non valide... pourtant il l'accepte quand j'emploi la même syntaxe pour la destination !! Chemin saisie source : "toto tata" Citation:@echo off pushd %CD% :reload set source= set /p source=entrer le nom exact du dossier source: if {%source%}=={} goto end1 set folder= set /p folder=entrer le nom du dossier de destination: if {%folder%}=={} goto end2
xcopy "DOSSIERA\"%source% "DOSIIERB\Dossier Cplus\"%folder%"\%source%" /e /o /i echo la copie des fichiers s'est bien terminée goto fin
:end1 cls echo enter un dossier source goto reload
:end2 cls echo enter un dossier de destination goto reload
:fin PAUSE & EXIT
|
Mer 10 Fév 2010 - 09:54 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
Tu me perds dans ton code, tu mets A pour la source et B.... Code vérifié avec dossier composé. DOSSIERB = Source DOSSIERA = Destination XCOPY "SOURCE" "DESTINATION" /E /O /I Code:@echo off
pushd %CD% :reload set /p source=entrer le nom exact du dossier source: set /p folder=entrer le nom du dossier de destination: IF NOT DEFINED source (goto :end1) IF NOT DEFINED folder (goto :end2)
xcopy "dossierB\%source%" "DossierA\%folder%\%source%" /e /o /i echo la copie des fichiers s'est bien terminée pause goto fin
:end1 cls echo enter un dossier source goto reload
:end2 cls echo enter un dossier de destination goto reload
:fin PAUSE & EXIT
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mer 10 Fév 2010 - 11:26 |
|
|
keben
Batcheur Avancé
Hors ligne
Inscrit le: 08 Fév 2010
Messages: 16
Niveau en programmation: Niveau en graphisme: Point(s): 0 Moyenne de points: 0,00
|
[Résolu]question xcopy
en fait pour faire simple (si,si je vais essayer) comment faire pour pouvoir rentrer dans la requete source ou folder des noms de dossier comportant des espaces, car même si je les rentres entre guillemet ça ne passe pas :
|
Mer 10 Fév 2010 - 11:45 |
|
|
Publicité
|
Publicité
|
Mer 10 Fév 2010 - 11:45 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
tu ne mets pas de guillements et pour copier le source et la destination ont le meme nom : Dossier B Dossier B ceci afin de créer le dossier B dans le dossier de destination Dossier A. En faite il suffirait juste de poser une seule question tu n'es pas clair dans ce que tu veux copier ou non. Si c'est le dossier toto contenu dans le dossier B qui doit etre copié dans le dossier A tout est dans le code ci dessous Code:@echo off
pushd %CD% :reload set /p source=entrer le nom exact du dossier source: IF NOT DEFINED source (goto :end1)
xcopy "dossierB\%source%" "DossierA\%source%" /e /o /i echo la copie des fichiers s'est bien terminée pause goto fin
:end1 cls echo enter un dossier source goto reload
:fin PAUSE & EXIT
IL faut que tu comprennes la syntaxe de la commande XCOPY avant toute chose : Code:XCOPY "DossierB\toto" "DossierA\toto\" /I /E /O XCOPY "DossierB\tata toto" "DossierA\tata toto" /I /E /O XCOPY "DossierB\toto" "DossierA\BACKUP\toto\" /I /E /O XCOPY "DossierB\tata toto" "DossierA\BACKUP\tata toto" /I /E /OCode:SET /P FILE= XCOPY "DossierB\%FILE%" "DossierA\%FILE%\" /I /E /O XCOPY "DossierB\%FILE%" "DossierA\BACKUP\%FILE%\" /I /E /OCode:@echo off
pushd %CD% :reload set /p FILE=entrer le nom exact du dossier source: IF NOT DEFINED FILE (goto :end1)
xcopy "dossierB\%FILE%" "DossierA\%FILE%" /e /o /i echo la copie des fichiers s'est bien terminée pause goto fin
:end1 cls echo enter un dossier source goto reload
:fin PAUSE & EXIT
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mer 10 Fév 2010 - 11:52 |
|
|
keben
Batcheur Avancé
Hors ligne
Inscrit le: 08 Fév 2010
Messages: 16
Niveau en programmation: Niveau en graphisme: Point(s): 0 Moyenne de points: 0,00
|
[Résolu]question xcopy
ok ça fonctionne...(je ne sais pas pourquoi j'avais un dossier qu'il ne voulait pas copier)
J'aurais quand même juste besoin de spécifier le nom du dossier de destination dans lequel copier le dossier toto (et que je puisse rentrer un nom long comportant des espaces)
Merci beaucoup pour ta patience et désolé si je n'arrive pas à être aussi clair que je le voudrais
|
Mer 10 Fév 2010 - 12:12 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
Citation:J'aurais quand même juste besoin de spécifier le nom du dossier de destination dans lequel copier le dossier toto (et que je puisse rentrer un nom long comportant des espaces)
Merci beaucoup pour ta patience et désolé si je n'arrive pas à être aussi clair que je le voudrais
rien compris exemple ... Je crois que c'est un problème de vocabulaire... Citation:@echo off
pushd %CD% :reload set /p source=entrer le nom exact du dossier source : set /p destination=enter le dossier de destination : IF NOT DEFINED source (goto :end1) IF NOT DEFINED destination (goto :end2)
xcopy "dossierB\%source%" "%destination%\%source%" /e /o /i /f echo la copie des fichiers s'est bien terminée pause goto fin
:end1 cls echo enter un dossier source goto reload
:end2 cls echo enter un dossier de destination goto reload
:fin PAUSE & EXIT
multipostage : http://www.batcher.fr/forum/viewtopic.php?f=4&t=258 par respect merci de fermer tous les sujets que tu aurais ouvert ailleurs.....
Dernière édition par Laddy le Mer 10 Fév 2010 - 13:08; édité 2 fois
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mer 10 Fév 2010 - 12:35 |
|
|
keben
Batcheur Avancé
Hors ligne
Inscrit le: 08 Fév 2010
Messages: 16
Niveau en programmation: Niveau en graphisme: Point(s): 0 Moyenne de points: 0,00
|
[Résolu]question xcopy
ok..le principe fonctionne parfaitement maintenant avec le nouveau code...seul petit problème que je ne m'explique pas ...si le répertoire à copier est vide, il ne crée pas le dossier de destination, par contre si il contient un fichier le batch fonctionne parfaitement... pourtant on a bien mis l'option /E dans xcopy?
|
Mer 10 Fév 2010 - 13:00 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
Bonjour je viens de tester mon dernier code avec un dossier tata toto vide et je n'ai pas ce problème, le dossier tata toto est bien copié dans le dossierA
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mer 10 Fév 2010 - 13:07 |
|
|
keben
Batcheur Avancé
Hors ligne
Inscrit le: 08 Fév 2010
Messages: 16
Niveau en programmation: Niveau en graphisme: Point(s): 0 Moyenne de points: 0,00
|
[Résolu]question xcopy
bon, de toute façons le cas ne se présentera pas puisque mes dossiers à copier ne sont pas vide... Donc ah y'est...le batch et bien fini...MERCI 10 0000 fois ah si? j'abuse là si je te demande comment copier mon batch sur l'ensemble des dossier situé à la racine de D:\... je ne sais pas comment spécifier l'ensemble des répertoires par un joker?
|
Mer 10 Fév 2010 - 13:19 |
|
|
Laddy
Administrateur
Hors ligne
Inscrit le: 30 Juin 2008
Messages: 4 135
Logiciels: PowerBatch Niveau en programmation: Niveau en graphisme: Point(s): 4 392 Moyenne de points: 1,06 Systeme d exploitation: WinXP, WIN7 64bit
|
[Résolu]question xcopy
tu utilises un boucle for , la commande dir /b pour lister tes dossiers et la commande copy tonfichier.bat vers les dossiers trouvés dans ta boucle Pour connaitre la syntaxe de for : http://batch.xoo.it/t494-Avant-de-faire-votre-demande.htmhttp://www.batchclipboard.info/wiki/doku.php?id=commandline:commande_for
______________________________________________________ Faites paraitre votre batch sur BatchClipboard
|
Mer 10 Fév 2010 - 13:23 |
|
|
|