为什么变量“号”没有在FOR循环再次越过它增加?
setLocal EnableDelayedExpansion
for /f "tokens=* delims= " %%a in (input.txt) do (
set /a N+=1
set /a number=!number!+1
echo %%a !number!.jpg >output.txt
)
为什么变量“号”没有在FOR循环再次越过它增加?
setLocal EnableDelayedExpansion
for /f "tokens=* delims= " %%a in (input.txt) do (
set /a N+=1
set /a number=!number!+1
echo %%a !number!.jpg >output.txt
)
OK,试试这个请:
@echo off &setLocal EnableDelayedExpansion
(for /f "tokens=* delims= " %%a in (input.txt) do (
set /a N+=1
set /a number=!number!+1
echo %%a !number!.jpg
))>output.txt
在重定向的情况下,你需要>>output.txt
或代码块(括号内)和>output.txt
。
首先,我不建议您启用的变量扩展,当你与文件名的工作,只使用它,如果你真的知道什么手段使delayedexpansion,好处(提高速度)和底片(丢失字符)。
你也正在分配的变量“N”的值,但你不使用VAR。
下面是代码:
@echo off
(for /f "usebackq tokens=* delims= " %%a in ("input.txt") do (
Set /A Number+=1
Call Echo %%a %%number%%.jpg
))>"Output.txt"
Pause&Exit
你应该试试
setLocal EnableDelayedExpansion
for /f "tokens=* delims= " %%a in (input.txt) do (
set /a N++
set /a number=!number!+1
echo %%a !number!.jpg >output.txt
)
编辑或尝试:
setLocal EnableDelayedExpansion
for /f "tokens=* delims= " %%a in (input.txt) do (
set /a N++
set /a number=!number!++
echo %%a !number!.jpg >output.txt
)
或者,也许是心不是++即使你使用的编程请问这是什么支持。 让我知道,虽然!
Shadowpat