2011-06-07 4 views
2

J'ai un fichier de commandes qui crée un dossier principal et y déplace les sous-dossiers &. J'ai besoin du fichier batch pour exécuter chaque fichier .REG dans le dossier principal.fichier batch exécute chaque fichier .REG dans un répertoire

J'ai mon dossier principal défini comme une variable (elle ne se termine pas par une barre oblique de fin): dossier%%

J'essaie quelque chose comme ça, mais c'est seulement mon deuxième jour à écrire des scripts de traitement par lots, donc je ne sais pas si ma syntaxe est foiré ou quoi.

for %%i in (%folder%\*.reg) do (regedit /s %%i) 

J'apprécierais grandement toute aide que n'importe qui peut fournir.

Merci beaucoup.

-Andrea

+0

avez-vous essayé? ça a marché? si ce n'est pas le cas, qu'est-ce qu'il a fait exactement? – Mat

+0

oui, je l'ai essayé. Les fichiers et les fichiers reg sont tous déplacés vers leurs emplacements corrects, mais les fichiers reg ne sont jamais exécutés et je ne vois pas les entrées reg apparaître comme ils le font quand je les appelle directement comme regedit/s thisfile.REG – Andrea

Répondre

3

Votre dossier contient probablement des espaces, vous devez donc indiquer le %% i dans la partie regedit.

+0

Eureka !!!!! Tu es mon héros Vladimir. Merci beaucoup. C'était ça. J'apprécie l'aide rapide de tout le monde. Je vous remercie. - Andrea – Andrea

+0

Heureux d'aider :) Vous devriez probablement marquer la réponse comme une réponse pour fermer la question. –

0

J'ai essayé sur Win2k8R2 for %i in (%folder%\*.reg) do (regedit /s %i) (enlevé% supplémentaire) et se sont comportés comme prévu. Quelle version de Windows utilisez-vous? Quels messages d'erreur ou mauvais comportement voyez-vous?

+0

Salut Ribram, merci. J'ai juste essayé la même chose mais ça n'a pas marché pour moi. Je suis sur Vista 32 bits. Le fichier batch sera exécuté sur les versions de XP, Vista et Windows 7 ... rien de plus ancien. – Andrea

Questions connexes