114 votes

Comment puis-je vérifier si un argument est défini lors du lancement/appel d'un fichier batch ?

J'essaie d'utiliser la logique de validation suivante dans un fichier batch, mais le bloc "utilisation" ne s'exécute jamais, même si aucun paramètre n'est fourni au fichier batch.

if ("%1"=="") goto usage

@echo This should not execute

@echo Done.
goto :eof

:usage
@echo Usage: %0 <EnvironmentName>
exit 1

Qu'est-ce que je fais de mal ?

0 votes

1 votes

@double-beep - La question ici (par daniel-fortunov) a été posée en premier, environ un an avant que la question à laquelle vous faites référence ne soit postée. Quel est le doublon (possible) ?

1 votes

@KevinFegan parce que l'autre question a plus de vues et plus de réponses.

1voto

IF "%1"=="" GOTO :Continue
.....
.....
:Continue
IF "%1"=="" echo No Parameter given

0 votes

Cela se produit pour run.bat "a b"

0voto

codey Points 1

SI "%1"=="" échouera, toutes les versions de ceci échoueront sous certaines conditions de caractère empoisonné. Seuls IF DEFINED et IF NOT DEFINED sont sûrs.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X