2011-06-23 9 views
0

Mon problème est le suivant. Dans un fichier batch que je vous écris je fais un appel à un autre fichier de commandes dans le même répertoire:Problèmes d'appel dans cmd

APPEL batch2.bat paramètre1 paramètre2

Cela semblait fonctionner très bien jusqu'à ce que je mis le lot fichiers dans un répertoire dont le chemin contient des espaces.

c: \ Mes fichiers batch \

par exemple. Je reçois le message d'erreur: Le système ne peut pas trouver le chemin spécifié.

Choses que j'ai essayé sans effet. Citant le chemin absolu dans l'instruction d'appel

CALL "C: \ Mes fichiers batch \ batch2.bat" paramètre1 paramètre2

CALL "% CD% \ batch2.bat" paramètre1 paramètre2

Existe-t-il un moyen d'accomplir ma tâche dans un répertoire dont le chemin contient des espaces? S'il vous plaît laissez-moi savoir si plus d'informations sont nécessaires.

+1

Pourquoi devez-vous indiquer le chemin absolu lorsqu'il se trouve dans le même répertoire? – adarshr

Répondre

3

Vous pouvez changer le répertoire de travail à l'emplacement de votre script dans la première .bat

C: 

CD "C:\My Batch Files" 

CALL batch2.bat parameter1 parameter2 

Bien que, je l'ai testé votre exemple (CALL "C: \ Mes fichiers batch \ batch2.bat" paramètre1 paramètre2) sur Windows 7 et Windows XP SP3 et les deux ont bien fonctionné. Sur quel système d'exploitation testez-vous?