gpt4 book ai didi

batch-file - 我的批处理文件中的用户输入问题

转载 作者:行者123 更新时间:2023-12-03 22:22:48 24 4
gpt4 key购买 nike

这是给我带来麻烦的代码部分:

IF EXIST TH_BUILD_* (
ECHO A current build of Test Harness exists.
set /p delBuild=Delete preexisting build [y/n]?:
if "%delBuild%"=="y" (GOTO deleteandcontinue) else ( EXIT)
)

由于某种原因,无论输入什么,批处理文件都会退出。为什么会发生这种情况(永远不会达到 deleteandcontinue)?

谢谢!

最佳答案

在测试 delBuild 时尝试使用延迟扩展:

setlocal enableextensions enabledelayedexpansion

IF EXIST TH_BUILD_* (
ECHO A current build of Test Harness exists.
set /p delBuild=Delete preexisting build [y/n]?:
if "!delBuild!"=="y" (
GOTO deleteandcontinue
) else (
exit
)
)

:deleteandcontinue
@echo At deleteandcontinue

%var% 变量在读取命令时展开。 parens 之间的命令集被视为单个命令,因此当您进行测试时 delBuild 不存在。有了延迟展开,变量在命令执行时展开,所以在测试的时候,delBuild是有值的。

关于batch-file - 我的批处理文件中的用户输入问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/916413/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com