set "us=no"
set "login="
set "ps=no"
set "password="
set "ns=no"
set "mn=no"
set "sc=no"
set "cl=no"
set "contact="
:st
cls
set "start=%CD%\bin\Skype\Skype.exe"
if "%us%"=="yes" set "start=%start% /username:%login%"
if "%ps"=="yes" set "start=%start% /password:%password%"
if "%ns%"=="yes" set "start=%start% /nosplash"
if "%mn%"=="yes" set "start=%start% /minimized"
if "%sc%"=="yes" set "start=%start% /secondary"
if "%cl%"=="yes" set "start=%start% /callto:%contact%"
echo "%start%"
pause
我试过的事情:
删除每行上的if部分并单独尝试命令
删除引文(错误输出)
在双方都加上引号会将文本“转换”到变量,其中变量%变量“%将包含(文本”)我不确定为什么它会因语法错误而崩溃
具体而言,一旦尝试添加更多文本以启动变量
,就会出错顺便说一句。我还需要一些setlocal enabledelayedexpansion吗?处理它与!!是吗?
答案 0 :(得分:1)
if "%ps"=="yes" set "start=%start% /password:%password%"
^^^
应该是
if "%ps%"=="yes" set "start=%start% /password:%password%"
^^^^
你知道的。有时它只需要另一组眼睛。