2014-09-08 2 views
0

у меня есть пакетный файл, и он содержит следующий код:Batch File - Создание нескольких файлов с разными именами

@echo off 
color 0e 
:initialize 
set filemaker=1 
echo How many files? 
echo. 
set /p uservar= 
echo Creating... 
for /l %%x in (1, 1, %uservar%) do echo. 2>%CD%\%filemaker%.txt & set /a filemaker=%filemaker%+1 & timeout /t 1 /nobreak >nul 
echo %filemaker% 
pause 

И каждый раз, когда я исполню его, файл, которые порождаются (независимо от значения% uservar %) ВСЕГДА имя 2, и всегда есть один файл! Я хотел бы несколько с разными именами, например, файл 1 - это имя 1, файл 2 - это имя 2 и т. Д.

Любая помощь приветствуется!

ответ

1

Вам нужно замедленные 'открыла

@echo off 
color 0e 
:initialize 
set filemaker=1 
echo How many files? 
echo. 
set /p uservar= 
echo Creating... 
SetLocal EnableDelayedExpansion 
for /l %%x in (1, 1, %uservar%) do ( 
    echo. 2>%CD%\!filemaker!.txt 
    set /a filemaker=filemaker+1 
    timeout /t 1 /nobreak >nul 
) 
echo %filemaker% 

pause 

для получения дополнительной информации проверить эти ссылки:

http://www.robvanderwoude.com/variableexpansion.php

http://ss64.com/nt/delayedexpansion.html

http://blogs.msdn.com/b/oldnewthing/archive/2006/08/23/714650.aspx

+0

Спасибо, приятель! Именно то, что мне нужно! – flamebull5

Смежные вопросы