Batch file 如何在FOR/L中使用EnableDelayedExpansion?
我一直在得到缺少操作员的错误信息。我想我用的“!”完全错了,但我不知道在哪里用Batch file 如何在FOR/L中使用EnableDelayedExpansion?,batch-file,Batch File,我一直在得到缺少操作员的错误信息。我想我用的“!”完全错了,但我不知道在哪里用 ECHO ON SETLOCAL EnableDelayedExpansion SET CSV_Name= SET /P CSV_Name=Please enter the CSV Name. ECHO Zahl;Quadrat;Kubik >> C:\Users\Jeff\Desktop\%CSV_Name%.csv SET Square=0 SET Cubic=0 FOR /L %%A IN
ECHO ON
SETLOCAL EnableDelayedExpansion
SET CSV_Name=
SET /P CSV_Name=Please enter the CSV Name.
ECHO Zahl;Quadrat;Kubik >> C:\Users\Jeff\Desktop\%CSV_Name%.csv
SET Square=0
SET Cubic=0
FOR /L %%A IN (2, 2, 100) DO (
SET /A !Square! = %%A * %%A
SET /A !Cubic! = %%A * %%A * %%A
ECHO %%A
ECHO !Square!
ECHO %%A;!Square!;!Cubic! >> C:\Users\Jeff\Desktop\%CSV_Name%.csv
)
有人能解释一下我做错了什么吗
SET /A Square = %%A * %%A
SET /A Cubic = %%A * %%A * %%A
你不需要将新值设置为变量时,请使用code>或%
。尝试
SET /A Square = %%A * %%A
SET /A Cubic = %%A * %%A * %%A
SET /A !Square! = %%A * %%A
你不需要将新值设置为变量时,代码>或%
SET /A !Square! = %%A * %%A
将尝试设置名为的变量(square的内容)
将设置为方形
!瓦尔
将检索变量var
的当前内容(即,由于循环的操作而发生的变化),而%var%
将检索变量的初始值-检查语句的有效性(“解析”)时的状态。在循环之外,!瓦尔代码>=%var%
但是使用%var%
和保留是传统的智慧!瓦尔代码>用于在代码块
(括号内的行序列)操作期间可能更改的值
将尝试设置名为的变量(square的内容)
将设置为方形
!瓦尔
将检索变量var
的当前内容(即,由于循环的操作而发生的变化),而%var%
将检索变量的初始值-检查语句的有效性(“解析”)时的状态。在循环之外,!瓦尔代码>=%var%
但是使用%var%
和保留是传统的智慧!瓦尔代码>用于在代码块操作过程中可能更改的值(括号中的行序列)。不起作用。我得到了一个例子<代码>设置/方形=70*70回声!正方形代码>@HenS-你不工作是什么意思?这是在输出中还是错误再次出现?这不起作用。我得到了一个例子<代码>设置/方形=70*70回声!正方形代码>@HenS-你不工作是什么意思?这是在输出中还是错误再次出现?