Question

Comment procéder avec un fichier de commandes interactif?

Par exemple,

Voulez-vous continuer? [y / n]

Si 'y' Goto Label1

Sinon, aller à Label2

Merci

Était-ce utile?

La solution

Vous pouvez utiliser la commande SET. Voici la commande DOS équivalente au pseudo-code que vous avez ci-dessus:

set /p choice=Do you want to continue? [y/n]
if '%choice%'=='Y' goto label1
goto label2

Autres conseils

À l'aide de la commande choice, vous pouvez spécifier un ensemble de caractères valides et un message:

choice /C YN /M "Do you want to continue?"
if errorlevel 2 goto labelno
if errorlevel 1 goto labelyes

set / p choice = Voulez-vous continuer? [y / n] si "% choice% " == " y " ( aller à label1 ) sinon aller à l'étiquette2

La plupart des réponses de vos gars me plaisent, mais le plus que je puisse faire est (par exemple, ce code est mon mode d'organisation.

:Label1
@echo off
color (any color)
title (anything here)

set /p choice=Do you want to continue? [y/n]
IF %choice% == y goto Label2
IF %choice% == n exit

:Label2
cls
echo you chose Yes.

Je connais un moyen de le faire (comme @ user3093687 posté)

set /p choice=Do you want to continue? (y,n)
if /I %choice%==y goto Label2
if /I %choice%==n goto exit

:Label2
Cls
echo You chose yes

:exit
exit

Le / I dans les deuxième et troisième lignes du fichier de commandes permet de ne pas être sensible à la casse et les caractères spéciaux sont ignorés (les exemples Y et y seront tous deux lus comme y.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top