Batch file 在代码中更改变量名
我想更改批处理文件中变量的名称,因为这样我就不必24次键入相同的代码 我想要这样的东西,但实际上是可行的:Batch file 在代码中更改变量名,batch-file,Batch File,我想更改批处理文件中变量的名称,因为这样我就不必24次键入相同的代码 我想要这样的东西,但实际上是可行的: set n=1 set t=1 :loop set /p %n%%t% = this will be variable %n%%t%: echo %%n%%t%% set /a n+=1 set /a t+=1 goto loop 您可以使用数组来实现这一点。试试这个: set arrayline[%n%][%t%] = this will be variable %n%%t%
set n=1
set t=1
:loop
set /p %n%%t% = this will be variable %n%%t%:
echo %%n%%t%%
set /a n+=1
set /a t+=1
goto loop
您可以使用数组来实现这一点。试试这个:
set arrayline[%n%][%t%] = this will be variable %n%%t%:
您可以使用数组来实现这一点。试试这个:
set arrayline[%n%][%t%] = this will be variable %n%%t%:
考虑一下,而不是goto-它会工作得更快,代码也会更易于维护
请注意,如果在分配变量值时在=
周围留有空格,则空格将成为变量名称的一部分。请考虑,而不是goto-它将工作更快,代码更易于维护。尽管您还需要
请注意,如果在分配变量值时在=
周围留下空格,则空格将成为变量名称的一部分。两个错误
首先,如前所述,您在设置的变量中包含了一个空格
第二,不能对以数字开头的变量名称使用echo
您可以使用set 1
(例如)查看变量,因此如果“%%a”==“1”echo%%b
例如,要提取环境变量1
但是,简单地使用不以数字开头的变量名称要容易得多
%n
其中n
为0..9表示相关例程的参数n 两个错误
首先,如前所述,您在设置的变量中包含了一个空格
第二,不能对以数字开头的变量名称使用echo
您可以使用set 1
(例如)查看变量,因此如果“%%a”==“1”echo%%b
例如,要提取环境变量1
但是,简单地使用不以数字开头的变量名称要容易得多
%n
其中n
为0..9表示相关例程的参数n 但这实际上是可行的
-那么问题出在哪里呢?Windows上可以使用这么多“真正”的脚本语言-我强烈建议您避免使用.bat文件,除了最简单的任务。VBScript和Powershell是两个非常优秀的内置选项。嗯……我建议你阅读,但这实际上是可行的
——那么问题出在哪里呢?有那么多“真正的”脚本语言可以在Windows上使用——我强烈建议你避免使用.bat文件,除了最简单的任务。VBScript和Powershell是两个非常优秀的内置选项。我建议你读一读