我有批处理问题。我希望每次打开批次时都创建新的目录并保存文件
这是我的代码示例
SET i=0
FOR /L %%i IN (0,1,100) DO (
IF NOT EXIST res\%%i (
mkdir res\%%i
GOTO run
)
)
:run
start X.exe /stext res\%i%\X.txt
正在创建文件夹。
我有问题start X.exe /stext res\%i%\X.txt
由于
答案 0 :(得分:0)
%i%
和%%i
是完全不同的变量。 %i%
是常规批量变量,而%%i
仅存在于for
循环中。致电goto run
后,它就不再存在。
您可以将%%i
存储在变量中,然后使用delayed expansion调用它,因为您将其设置在代码块(一组括号)中。
@echo off
setlocal enabledelayedexpansion
SET i=0
FOR /L %%i IN (0,1,100) DO (
IF NOT EXIST res\%%i (
set i=%%i
mkdir res\!i!
GOTO run
)
)
:run
start X.exe /stext res\!i!\X.txt