Copie dans répertoire par le début de son nom
Résolu
methylene
-
methylene -
methylene -
Bonjour,
Je cherche juste un moyen en batch de copier un fichier d'un répertoire A vers un répertoire B pas entièrement défini.
Je m'explique :
copy C:\repertoireA\test1.txt C:\Progra~1\Monnaie\Repert~1\
Le souci c'est que le répertoire destination n'a pas un nom fixe, seul le début est commun.
Par exemple je vais avoir des mises à jour, donc mon nom de répertoire destination va changer :
bonbon
bonbon v 2.0
bonbon v 4.5
bonbon v 3 r 14
etc...
En gros seule la fin du nom d emon répertoire va changer, et je veux donc identifier mon répertoire uniquement par les "n" lettres de début.
Est-ce possible ? J'ai essayer plein de solutions, rien ne marche et mes recherches sur internet ont été infructueuses.
Merci
Je cherche juste un moyen en batch de copier un fichier d'un répertoire A vers un répertoire B pas entièrement défini.
Je m'explique :
copy C:\repertoireA\test1.txt C:\Progra~1\Monnaie\Repert~1\
Le souci c'est que le répertoire destination n'a pas un nom fixe, seul le début est commun.
Par exemple je vais avoir des mises à jour, donc mon nom de répertoire destination va changer :
bonbon
bonbon v 2.0
bonbon v 4.5
bonbon v 3 r 14
etc...
En gros seule la fin du nom d emon répertoire va changer, et je veux donc identifier mon répertoire uniquement par les "n" lettres de début.
Est-ce possible ? J'ai essayer plein de solutions, rien ne marche et mes recherches sur internet ont été infructueuses.
Merci
A voir également:
- Copie dans répertoire par le début de son nom
- Copie cachée - Guide
- Super copie - Télécharger - Gestion de fichiers
- Copie écran samsung - Guide
- Copie disque dur - Guide
- Changer le nom de son iphone - Guide
7 réponses
hello
tu peux faire "bonbon*"
mais il faut qu'il n'y en ait qu'un
on peut aussi faire
tu peux faire "bonbon*"
mais il faut qu'il n'y en ait qu'un
on peut aussi faire
C:> dir ... 09/03/2010 14:11 <REP> bonbon 09/03/2010 14:11 <REP> bonbon v 2.0 09/03/2010 14:12 <REP> bonbon v 3 r 14 09/03/2010 14:11 <REP> bonbon v 4.5 C:> C:> for /f "delims=" %a in ('dir /b') do @set b=%a C:> echo %b% bonbon v 4.5
Alors je vois l'idée mais je n'arrive pas à al mettre en place.
Pour le bonbon*, cela ne marche pas :
copy C:\repertoireA\testadditionel1.txt "C:\Progra~1\Monnaie\Bonbon*"
Il me le copie dans C:\Progra~1\Monnaie\ en renommant testadditionel1.txt en Bonbonditionnel1.txt, en gros les 6 premiers caractères sont remplacer.
En effet il n'y aura qu'un dossier bonbon dans mon dossier monnaie, mais ce dossier bonbon pourra avoir différente terminaison comme cité précdemment.
Ensuite pour la deuxième solution, j'ai essayé différente combine mais je n'y arrive pas en faisant :
/dir C:\Progra~1\Monnaie\
déjà il semblerait qu'il faille faire plutôt
cd C:\Progra~1\Monnaie\
Puis utilisation de for
for /f "delims= " %a in ('dir /b') do b=%a
j'obtiens b=bonbon v 4.5 (puisque c'est le seul dossier bonbon dans mon repertoire)
Si j'ai 2 dossiers bonbon par exemple bonbon v 4.5 et bonbon v 3.2, il va me mettre 2 lignes
C:\Progra~1\Monnaie>b=bonbon v 3.2
'b' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
C:\Progra~1\Monnaie>b=bonbon v 4.5
'b' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
Il y a donc un souci, car quand je fais echo %b ou echo %b%, il ne m'affiche que %b ou %b%.
Pour le bonbon*, cela ne marche pas :
copy C:\repertoireA\testadditionel1.txt "C:\Progra~1\Monnaie\Bonbon*"
Il me le copie dans C:\Progra~1\Monnaie\ en renommant testadditionel1.txt en Bonbonditionnel1.txt, en gros les 6 premiers caractères sont remplacer.
En effet il n'y aura qu'un dossier bonbon dans mon dossier monnaie, mais ce dossier bonbon pourra avoir différente terminaison comme cité précdemment.
Ensuite pour la deuxième solution, j'ai essayé différente combine mais je n'y arrive pas en faisant :
/dir C:\Progra~1\Monnaie\
déjà il semblerait qu'il faille faire plutôt
cd C:\Progra~1\Monnaie\
Puis utilisation de for
for /f "delims= " %a in ('dir /b') do b=%a
j'obtiens b=bonbon v 4.5 (puisque c'est le seul dossier bonbon dans mon repertoire)
Si j'ai 2 dossiers bonbon par exemple bonbon v 4.5 et bonbon v 3.2, il va me mettre 2 lignes
C:\Progra~1\Monnaie>b=bonbon v 3.2
'b' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
C:\Progra~1\Monnaie>b=bonbon v 4.5
'b' n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
Il y a donc un souci, car quand je fais echo %b ou echo %b%, il ne m'affiche que %b ou %b%.
Bon ben voila :
@set rep2=c:\progra~1\Monnaie\
cd %rep2%
@echo %rep2%
for /f "delims=" %%i in ('dir /b') do @set b=%%i
@echo %b%
@set rep2=%rep2%%b%
@echo %rep2%
Cela m'affiche bien c:\progra~1\Monnaie\Bonbon v 4.0
@set rep2=c:\progra~1\Monnaie\
cd %rep2%
@echo %rep2%
for /f "delims=" %%i in ('dir /b') do @set b=%%i
@echo %b%
@set rep2=%rep2%%b%
@echo %rep2%
Cela m'affiche bien c:\progra~1\Monnaie\Bonbon v 4.0
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Le seul souci, c'est que si j'ai plusieurs dossier dans mon répertoire, par exemple :
Bonbon v4.0
Sucrerie
Chocolat
Il va utiliser le dernier répertoire lister par la fonction dir, soit chocolat, or je voudrai qu'il selectionne toujours le répertoire commencant par Bonbon, quelqu'ensoit la fin.
Merci
Bonbon v4.0
Sucrerie
Chocolat
Il va utiliser le dernier répertoire lister par la fonction dir, soit chocolat, or je voudrai qu'il selectionne toujours le répertoire commencant par Bonbon, quelqu'ensoit la fin.
Merci