2012-10-10 5 views
1

J'ai des milliers de fichiers à déplacer.copier le fichier dans le répertoire basé sur le nom de fichier

J'ai déjà utilisé un fichier batch pour créer les répertoires dont j'ai besoin.

Mes noms de fichiers ressembler à ceci:

  • 6711_05_12.pdf
  • 10504_06_15.pdf
  • 559_07_11.pdf

Les premiers caractères jusqu'à la "_" sont le répertoire les fichiers doivent aller dans. Démarré le fichier batch - mais ne sait pas comment identifier le nom du fichier.

@echo off 
setlocal EnableDelayedExpansion 
for %%I in (*.pdf) do (
xcopy ??? 
) 

Existe-t-il un manuel pour les fichiers batch?

Répondre

1

Vous n'avez même pas besoin d'un fichier batch. La commande de ligne suivante suivante fera l'affaire. Il suffit de doubler les pourcentages si vous souhaitez placer la commande dans un fichier batch.

+0

La ligne de commande fonctionne très bien! Doubler les pourcentages n'a pas fonctionné dans le fichier batch. Merci de votre aide! –

+0

Pourquoi 'eol = _'? Ne suffirait-il pas que 'delims = _' suffise? Je veux dire, j'essaie juste d'apprendre, je n'ai jamais utilisé 'eol' dans mes scripts. –

+0

@AndriyM - Le nom du fichier n'a pas d'importance. L'EOL par défaut est ';', qui est valide dans un nom de fichier. C'est extrêmement improbable, mais un nom de fichier pourrait commencer par ';'. La définition d'EOL sur l'un des caractères DELIMS désactive effectivement EOL. – dbenham

Questions connexes