首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有"goto“错误的"If”语句

带有"goto“错误的"If”语句
EN

Stack Overflow用户
提问于 2016-05-04 13:05:39
回答 1查看 55关注 0票数 0

编辑:我解决了这个问题。我的输入变量和“如果”变量是不同的,我在更改后忘记更改其中的一个变量。

所以我的代码遇到了问题。

错误;

代码语言:javascript
复制
"goto installupdate" was unexpected at this time

所有的一切都到了

代码语言:javascript
复制
if %updatech%==Y goto iu
if %updatech%==y goto iu
if %updatech%==N goto noupdate
if %updatech%==n goto noupdate

我不知道我做错了什么。有人知道我的代码出了什么问题吗?

代码:

REM检查安装程序的更新

代码语言:javascript
复制
:updatecheck
bitsadmin.exe /transfer "updatecheck" "http://serverse.playat.ch/overtone/update.txt" "%temp%\overtoneupdate.txt"
set /p versioncompare=<"%temp%\overtoneupdate.txt"
del "%temp%\overtoneupdate.txt"
cls
if %currentbuild% == %versioncompare% goto noupdate
set /p updateyn=New version found! Would you like to update? [Y/N]:
if %updatech%==Y goto iu
if %updatech%==y goto iu
if %updatech%==N goto noupdate
if %updatech%==n goto noupdate
goto updatecheck

:iu
bitsadmin.exe /transfer "update" "http://serverse.playat.ch/overtone/%versioncompare%update.bat" "%cd%\update.bat"
echo %versioncompare%>upvers.txt
update.bat
exit

:noupdate
 cls
 goto install
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-04 13:11:59

在下面的代码行中,您将设置一个名为updateyn的变量,但要检查一个名为updatech的变量。

代码语言:javascript
复制
set /p updateyn=New version found! Would you like to update? [Y/N]:
if %updatech%==Y goto iu

这始终是空的,所以它失败了,因为它归结为

代码语言:javascript
复制
if ==Y goto iu

这是无效的语法。

除了修复变量名之外,还应该考虑用户只按enter (这将导致同样的问题)的情况。

您可以通过在变量周围放置一个已知的字符串来解决这个问题。

代码语言:javascript
复制
    if x%updateyn%x==xYx goto iu

例如。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37028711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档