-
-
Save jcefoli/fb9400aafee2ac585db3 to your computer and use it in GitHub Desktop.
@ECHO OFF | |
:start | |
SET choice= | |
SET /p choice=Do something? [N]: | |
IF NOT '%choice%'=='' SET choice=%choice:~0,1% | |
IF '%choice%'=='Y' GOTO yes | |
IF '%choice%'=='y' GOTO yes | |
IF '%choice%'=='N' GOTO no | |
IF '%choice%'=='n' GOTO no | |
IF '%choice%'=='' GOTO no | |
ECHO "%choice%" is not valid | |
ECHO. | |
GOTO start | |
:no | |
ECHO Do all of the no things here! | |
PAUSE | |
EXIT | |
:yes | |
ECHO Do all of the yes things here! | |
PAUSE | |
EXIT |
Sir, is there any way that automatically takes yes if the user does nothing?
Yes you can. Using his example, on line 10, just change no to yes and that should do it.
Sir, is there any way that automatically takes yes if the user does nothing?
Yes you can. Using his example, on line 10, just change no to yes and that should do it.
Changing line 10 from no to yes will not automatically select yes if no input is provided. IF '%choice%'=='' GOTO yes
would just skip to the :yes block instead of the no block if Enter was pressed without providing input. Set /p will wait forever for input.
Is there any reason you'd need this? It's rather dated. I would recommend using PowerShell as a much more modern and capable way of scripting.
Changing line 10 from no to yes will not automatically select yes if no input is provided.
IF '%choice%'=='' GOTO yes
would just skip to the :yes block instead of the no block if Enter was pressed without providing input. Set /p will wait forever for input.
Yes, you are correct. I misread that. I was thinking he meant if they just hit "Enter" without putting in a selection, it would just take them to the "yes" block.
Minor fixes this:
IF '%choice%'=='Y' GOTO yes
IF '%choice%'=='y' GOTO yes
Replace with this:
IF /i '%choice%'=='Y' GOTO yes
It supports uppercase and lowercase text input
Minor fixes this:
IF '%choice%'=='Y' GOTO yes IF '%choice%'=='y' GOTO yes
Replace with this:
IF /i '%choice%'=='Y' GOTO yes
It supports uppercase and lowercase text input
This may depend on OS (???) because on my machine, this input is case-sensitive (meaning that you need both the upper- and lowercase options or else one will be read as an invalid input). I'm on Windows 10, running in console.
Sir, is there any way that automatically takes yes if the user does nothing?