批处理 - 在变量中使用变量
Batch - Using variable inside a variable
大家好,今天玩.bat代码。
我想通过更改变量本身来更改标题。我想使用 title 命令的方式来自变量 %t%
。我知道问题出在哪里 - set /a n=%n% + 1
之后的变量 %t%
已经过时并且仍然具有值 n=0
。有什么方法可以自动更新 %t%
而无需再次输入 set t=title changing %n%
?我认为会有一些方法可以“锁定”变量 %n%
以便它获得最后一个可能的值。 (在 %t%
中输入自己后)
set /a n=0
set t=title changing %n%
%t%
pause
set /a n=%n% + 1
%t%
pause
不好意思EN,
感谢所有回复 <3
@echo off
setlocal EnableDelayedExpansion
set /a n=0
set "t=title changing ^!n^!"
%t%
pause
set /a n=%n% + 1
%t%
pause
有关解释,请在此站点中查找“延迟扩展”...
PS - 您可以这样输入 set /a n=%n% + 1
:set /a n=n + 1
或者更简单的输入方式:set /a n += 1
大家好,今天玩.bat代码。
我想通过更改变量本身来更改标题。我想使用 title 命令的方式来自变量 %t%
。我知道问题出在哪里 - set /a n=%n% + 1
之后的变量 %t%
已经过时并且仍然具有值 n=0
。有什么方法可以自动更新 %t%
而无需再次输入 set t=title changing %n%
?我认为会有一些方法可以“锁定”变量 %n%
以便它获得最后一个可能的值。 (在 %t%
中输入自己后)
set /a n=0
set t=title changing %n%
%t%
pause
set /a n=%n% + 1
%t%
pause
不好意思EN, 感谢所有回复 <3
@echo off
setlocal EnableDelayedExpansion
set /a n=0
set "t=title changing ^!n^!"
%t%
pause
set /a n=%n% + 1
%t%
pause
有关解释,请在此站点中查找“延迟扩展”...
PS - 您可以这样输入 set /a n=%n% + 1
:set /a n=n + 1
或者更简单的输入方式:set /a n += 1