Utilisation d la fontion MOVE en MS DOS

piroman14 Messages postés 18 Date d'inscription samedi 14 juin 2008 Statut Membre Dernière intervention 11 novembre 2008 - 11 nov. 2008 à 20:47
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 12 nov. 2008 à 13:52
Dsl mais je ne savais pas trop ou poser la question!

Mon problème est le suivant:
Je souhaiterais trier des dossiers suivant leur noms qui st du type :  19960830_19970922
                                                                                                    19960730_19971022
                                                                                                    19960330_19970522
                                                                                                    19960330_19970922

En l'occurence j'aiemerais déplacer uniquement : int_19960830_19970922
                                                                         int_19960730_19971022

Je souhaite en effet déplacer uniquement les dossiers qui ont les nombres 07 08 09 10 en 4ème position en partant du début et en partant de la fin et laisser les autres à leur place (j'éspère avoir été clair mais je suis pas sûr, de tte façon là n'est pas l'esentiel)

j'ai essayé les commandes MOVE suivantes:
MOVE "int_????08??_????09??" "fichieradeplacer"
MOVE "int_****08**_****09**" "fichieradeplacer"
MOVE "int_....08.._....09.." "fichieradeplacer"

et aucune ne marche!

Sivouplé aidé moua!!!!!!!!
Merci d'avance pour vos post ++

1 réponse

cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
12 nov. 2008 à 13:52
Salut,

Je ne suis pas parvenu à reproduire. J'ai fait un fichier int_19960830_19970922, puis j'ai utiliser la commande :
MOVE "int_????08??_????09??" "fichieradeplacer"

C'est à dire celle que tu donnes. Le fichier c'est correctement renommé en fichieradeplacer.

Par contre, cette commande ne fonctionne évidement pas si plusieurs fichiers correspondent : MOVE ne peut pas mettre int_19960830_19970922, int_19960830_19970923, int_19960830_19970924... dans un seul fichier "fichieradeplacer". Mais tu peux mettre un répertoire, ou utiliser une commande plus avancée style FOR pour gérer des renommages.

Style un batch dans ce genre là :
<hr size="2" width="100%" />@echo off
for %%I IN (int_????08??_????09??) DO call :MoveFile %%I

goto :EOF

:MoveFile
set CurrentFile=%1
echo Moving %CurrentFile% to %CurrentFile:~-2%.bck
move %CurrentFile% %CurrentFile:~-2%.bck
0
Rejoignez-nous