Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 在代码中更改变量名_Batch File - Fatal编程技术网

Batch file 在代码中更改变量名

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%

我想更改批处理文件中变量的名称,因为这样我就不必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 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是两个非常优秀的内置选项。我建议你读一读