Reputation: 1
I have a batch script that has a user input:
set /p serverstart=Starter Path (or leave blank if unknown):
Now what needs to happen is if a user inputs something (anything) it will go to a specific label:
if %serverstart% == [anything] goto %serverstart%
:%serverstart%
java -Xmx1024M -Xms1024M -jar %serverstart%.jar nogui
But only if the user inputs something. If the user leaves the field blank, the file needs to continue on it's way:
set /p serverstart=Starter Path (or leave blank if unknown):
:serverram
cls
set /p serverram=Server RAM:
[enter more code here]
So, if the user inputs something it goes to the defined user label, and starts the %serverstart%.jar, but if the user leaves the field blank it does nothing and carries on. Would:
set /p serverstart=Starter Path (or leave blank if unknown):
if %serverstart% == "" goto %serverstart%
goto serverram
:serverram
set /p serverram=Server RAM:
:%serverstart%
java -Xmx%serverram%M -Xms%serverram%M -jar %serverstart%.jar nogui
work?
(Just incase you want it, here is the full code so far)
@ECHO OFF
title MineServer Runner
cls
:servername
cls
if exist ServerFiles\serverconfig.cmd goto startserver
set /p servername=Server Name:
echo set servername=%servername%>> ServerFiles\serverconfig.cmd
call "ServerFiles\serverconfig.cmd"
title MineServer (%servername%) Runner
set /p serverstart=Starter Path (or leave blank if unknown):
:serverram
cls
set /p serverram=Server RAM:
echo set serverram=%serverram%>> ServerFiles\serverconfig.cmd
:startserver
cd ServerFiles
call "serverconfig.cmd"
java -Xmx%serverram%M -Xms%serverram%M -jar starters\minecraft_server.jar nogui
Upvotes: 0
Views: 76
Reputation: 337
i would turn it around:
if not "%serverstart%" == "" (
we have input-code
) ELSE (
we have NO input-code
)
Edited.
Upvotes: 0
Reputation: 80213
if defined serverstart goto (wehaveinput) else (goto wedonthaveinput)
You can of course use if not defined serverstart...
also.
An remember - set
your variable to empty (set "var=") before
set/p` else it will remain unchanged from any prior value it had.
Upvotes: 1