Un copy complexe
Résolu
trunksdu92
Messages postés
321
Date d'inscription
Statut
Membre
Dernière intervention
-
trunksdu92 Messages postés 321 Date d'inscription Statut Membre Dernière intervention -
trunksdu92 Messages postés 321 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai besoin de faire un batch qui copie tous les fichiers d'un répertoire ainsi que les fichiers contenue dans les sous répertoire.
Jusque là, c'est simple. Le plus compliqué c'est qu'en sortie, il doit y'avoir qu'un seul et même répertoire avec tous les fichiers dedans non trié.
Quelqu'un a une idée?
Si une commande qui permet de fussionner tous les dosser en un seul...
Merci d'avance.
Bien cordialement.
J'ai besoin de faire un batch qui copie tous les fichiers d'un répertoire ainsi que les fichiers contenue dans les sous répertoire.
Jusque là, c'est simple. Le plus compliqué c'est qu'en sortie, il doit y'avoir qu'un seul et même répertoire avec tous les fichiers dedans non trié.
Quelqu'un a une idée?
Si une commande qui permet de fussionner tous les dosser en un seul...
Merci d'avance.
Bien cordialement.
A voir également:
- Un copy complexe
- Exact audio copy - Télécharger - Conversion & Extraction
- Super copy - Télécharger - Gestion de fichiers
- Copy protect - Télécharger - Chiffrement
- Total copy - Télécharger - Utilitaires
- Copy trans manager - Télécharger - Lecture & Playlists
7 réponses
hello
dans un .bat, remplacer %a par %%a
dans un .bat, remplacer %a par %%a
for /F "delims=" %a in ('dir /S /B') DO @copy /y "%a" \dest
salut.
En bash, ça serait hyper vite fait...
Première piste, avec la commande "dir /S /B" tu récupères une liste de tout les fichiers à copier.
Sinon, en lisant l'aide de for, j'ai peut être une idée, essai un truc dans le genre :
autre option, qui ne semble pas fonctionner chez moi à cause d'espace dans les noms :
En bash, ça serait hyper vite fait...
Première piste, avec la commande "dir /S /B" tu récupères une liste de tout les fichiers à copier.
Sinon, en lisant l'aide de for, j'ai peut être une idée, essai un truc dans le genre :
for /R repertoire/racine/a/copier %file in (*.*) DO copy %file repertoire/de/destination
autre option, qui ne semble pas fonctionner chez moi à cause d'espace dans les noms :
for /F %file in ('dir /S /B') DO copy %file c:\rep_dest
Merci pour ta réponse.
Oui je sais bash serait tellement mieux, mais disons que dans mon travail je suis obligé de bosser sur du windows.
Je savais même pas qu'il y'avait des for sous windows.
pour l'instant ça marche pas des masses.
Oui je sais bash serait tellement mieux, mais disons que dans mon travail je suis obligé de bosser sur du windows.
Je savais même pas qu'il y'avait des for sous windows.
pour l'instant ça marche pas des masses.
Salut.
je t'avoue ne pas avoir tout tester, mais partiellement, avec des echo, et ça fonctionnai pas trop mal.
à toi de voir ce qui merde, pourquoi ça ne fonctionne pas. Le for /R semble plus prometteur.
Sinon, il est possible d'utiliser bash sous windows en installant "Msys".
en batch, il y a une espèce d'équivalent à "man", c'est "help" et l'équivalent de --help c'est "/?".
Par exemple, tu peuxtaper "help for" ou "for /?" pour avoir accès à l'aide en ligne.
je t'avoue ne pas avoir tout tester, mais partiellement, avec des echo, et ça fonctionnai pas trop mal.
à toi de voir ce qui merde, pourquoi ça ne fonctionne pas. Le for /R semble plus prometteur.
Sinon, il est possible d'utiliser bash sous windows en installant "Msys".
en batch, il y a une espèce d'équivalent à "man", c'est "help" et l'équivalent de --help c'est "/?".
Par exemple, tu peuxtaper "help for" ou "for /?" pour avoir accès à l'aide en ligne.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci dubcek.
Mais je comprends pas à quoi correspond %a%?
ainsi que /dest?
Je suppose que l'un est le répertoire source et l'autre le répertoire de destination mais j'en suis pas sur...
Mais je comprends pas à quoi correspond %a%?
ainsi que /dest?
Je suppose que l'un est le répertoire source et l'autre le répertoire de destination mais j'en suis pas sur...
Ca marche. En fait il se met par défaut sur le répertoire racine.
Autre problème, la ligne marche mais quand seulement quand je le met dans un invite de comande.
Quand je batch:
for /F "delims=" %a% in ('dir /S /B') DO @copy /y "%a%" \replotus\id\
pause
Rien ne se passe et la fenetre se ferme direct sans s'arrêter sur pause. On dirait que le programme sort avant la fin.
Quelqu'un sait pourquoi?
Autre problème, la ligne marche mais quand seulement quand je le met dans un invite de comande.
Quand je batch:
for /F "delims=" %a% in ('dir /S /B') DO @copy /y "%a%" \replotus\id\
pause
Rien ne se passe et la fenetre se ferme direct sans s'arrêter sur pause. On dirait que le programme sort avant la fin.
Quelqu'un sait pourquoi?