Copier fichiers dans 1 répertoire (avecMSDOS)
Résolu/Fermé
A voir également:
- Copier fichiers dans 1 répertoire (avecMSDOS)
- Wetransfer gratuit fichiers lourd - Guide
- Copier une vidéo youtube - Guide
- Super copier - Télécharger - Gestion de fichiers
- Renommer plusieurs fichiers - Guide
- Explorateur de fichiers - Guide
10 réponses
Cette fois cela marche à merveille !!
MERCI BEAUCOUP pour ton aide. Cela va m'être d'un très grande utilité.
MERCI BEAUCOUP pour ton aide. Cela va m'être d'un très grande utilité.
giheller,
Comment faire cela de façon générique sachant qu'en réalité l'arborescence est beaucoup plus importante (répertoires, sous-répertoires, sous-sous-répertoires,...) ?
Comment faire cela de façon générique sachant qu'en réalité l'arborescence est beaucoup plus importante (répertoires, sous-répertoires, sous-sous-répertoires,...) ?
De plus, l'arborescence est susceptible de bouger (suppressions/ajout de répertoires, suppression/ajout de sous-répertoires, suppression/ajout de fichiers,...) --> d'où l'idée de généricité.
De plus, l'arborescence est susceptible de bouger (ajout/suppression de répertoires, ajout/suppression de sous-répertoires, ajout/suppression de sous-sous-répertoires, ajout/suppression de fichiers,...) --> d'où l'idée de généricité.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai lancé ce programme et cela marche très bien sur des fichiers textes. Cependant cela ne fonctionnent pas sur les images. En effet, les images sont copiées mais il n'est pas possible de les lire...
Utilisateur anonyme
28 sept. 2008 à 11:02
28 sept. 2008 à 11:02
Bonjour,
vous lui demandez de tout copier alors il copie tout.
pour obtenir le résultat escompté il faut faire plusieurs commandes puisque vous ne souhaitez pas garder les répertoires.
vous lui demandez de tout copier alors il copie tout.
pour obtenir le résultat escompté il faut faire plusieurs commandes puisque vous ne souhaitez pas garder les répertoires.
cchristian
Messages postés
921
Date d'inscription
lundi 21 janvier 2008
Statut
Membre
Dernière intervention
6 mars 2012
131
30 sept. 2008 à 00:10
30 sept. 2008 à 00:10
Bonsoir,
Essaie cela :
NB. Les commandes :
ne sont vraisemblablement pas nécessaires, elles permettent la récupération du nom et de l'extension du fichier à déplacer. Je crois me rappeler que la commande MOVE récupère ce nom s'il n'est pas spécifié dans le dossier cible. Je n'ai pas testé sans elles.
Par contre si c'est un COPY
Essaie cela :
SETLOCAL ENABLEdelayedExpansion SETLOCAL ENABLEextensions CLS rem DOSSIER CIBLE SET "param_0=C:\Documents and Settings\Christian\Mes documents\b1\" rem DOSSIER SOURCE (répertoire générique ) SET "param_1=C:\Documents and Settings\Christian\Mes documents\a1\" rem Selection sur extension possible. SET "param_2=*" FOR /R "%param_1%" %%F IN (*.%param_2%) DO ( SET "nom_ext=%%~nxF" rem Pour tracer en test ECHO !nom_ext! SET "param_0=%param_0%!nom_ext!" rem MOVE /Y "%%F" "!param_0!" ) COPY "%%F" /A "!param_0!" /A )
NB. Les commandes :
SET "nom_ext=%%~nxF" rem Pour tracer en test ECHO !nom_ext! SET "param_0=%param_0%!nom_ext!"
ne sont vraisemblablement pas nécessaires, elles permettent la récupération du nom et de l'extension du fichier à déplacer. Je crois me rappeler que la commande MOVE récupère ce nom s'il n'est pas spécifié dans le dossier cible. Je n'ai pas testé sans elles.
Par contre si c'est un COPY
COPY "%%F" /A "!param_0!" /A )que tu souhaites faire elles sont nécessaires :
cchristian
Messages postés
921
Date d'inscription
lundi 21 janvier 2008
Statut
Membre
Dernière intervention
6 mars 2012
131
4 oct. 2008 à 14:49
4 oct. 2008 à 14:49
Bonjour,
Pour des images essaie en remplaçant /A par /B. (B=Binaire)
COPY "%%F" /A "!param_0!" /A )
remplacé par
COPY "%%F" /B "!param_0!" /B )
Tu vas probablement devoir identifier les deux cas en ajoutant un test sur l'extension.
--------------------------------------------------------------------------------------------
P.S. Pour extraire l'extension :
SET "ext=%%~xF"
Pour des images essaie en remplaçant /A par /B. (B=Binaire)
COPY "%%F" /A "!param_0!" /A )
remplacé par
COPY "%%F" /B "!param_0!" /B )
Tu vas probablement devoir identifier les deux cas en ajoutant un test sur l'extension.
--------------------------------------------------------------------------------------------
P.S. Pour extraire l'extension :
SET "ext=%%~xF"
4 oct. 2008 à 23:57
20 janv. 2009 à 12:20
Voici mon arborescence :
DossierSource
---Fichier01
---Fichier02
---Répertoire1
---------Répertoire2
------------Fichier121
------------Fichier122
---------Fichier11
---Répertoire2
------Fichier21
------Fichier22
Voici ce que je souhaite obtenir :
DossierCible
---Fichier01
---Fichier02
---Fichier121
---Fichier122
---Fichier11
---Fichier21
---Fichier22
Mon Programme (qui marche !) :
SETLOCAL ENABLEdelayedExpansion
SETLOCAL ENABLEextensions
CLS
rem DOSSIER CIBLE
SET "param_0=C:\Documents and Settings\Christian\Mes documents\b1\"
rem DOSSIER SOURCE (répertoire générique )
SET "param_1=C:\Documents and Settings\Christian\Mes documents\a1\"
rem Selection sur extension possible.
SET "param_2=*"
FOR /R "%param_1%" %%F IN (*.%param_2%) DO (
SET "nom_ext=%%~nxF"
rem Pour tracer en test ECHO !nom_ext!
SET "param_0=%param_0%!nom_ext!"
rem MOVE /Y "%%F" "!param_0!" )
COPY "%%F" /A "!param_0!" /A )
Fonctionnalités que j'aimerai ajouter :
dans le dossier cible : nom du fichier doit être = "(nom du dossier)" + " - " + "nom du fichier"
ex
DossierCible
---"Fichier01"
---"Fichier02"
---"(Répertoire1) - (Répertoire2) - Fichier121"
---"(Répertoire1) - (Répertoire2) - Fichier122"
---"(Répertoire2) - Fichier21"
---"(Répertoire2) - Fichier21"
Merci à celui qui me répondra.
(bjr à Cchristian ;) )