darkelfsfx |
20-08-2016 14:09 2661617 |
Не выполняется присвоение значения переменной в цикле
Здравствуйте.
Подскажите, пожалуйста.
В моём скрипте выполняется создание имён получаемых из файла copyfile.ini содержащих имена директорий. Отдельно получаю текущую дату и время.
Содержимое файла copyfile.ini (директории реально присутствуют) на диске:
Сам скрипт. В нём присутствует переменная blo, которая должна получать имя последний директории во вложении директорий из файла copyfile.ini. Т.е. по очереди: первой "3", затем "data".
Проблема в том что переменная blo не получает эти данные. Что я делаю не так?
Код:
echo off
cls
set PostFolder=g:\2
set ListFolders=g:\copyfile.ini
set now=%DATE: =0% %TIME: =0%
for /f "tokens=1-7 delims=/-:., " %%a in ( "%now%" ) do (
set nowdata=%%c%%b%%a_%%d%%e
)
for /f "delims=" %%n in (%ListFolders%) do (
for /f "tokens=1-3 delims=\: " %%a in ("%%n") do set blo=%%b
for /f "delims=" %%a in ('dir "%%n" /b /a:-d') do (
echo %%n\%blo%%nowdata%
)
)
|
greg zakharov |
20-08-2016 15:20 2661630 |
Код:
@echo off
setlocal enabledelayedexpansion
set "time=%time:~0,8%"
set "now=%date:.=%_%time::=%"
for /f %%i in ('find /v /c "" ^< copyfile.ini') do set "n=%%i"
3<copyfile.ini (
for /l %%i in (1, 1, %n%) do (
set /p blo=<&3
echo C:\!blo:g:\=!\!now!
)
)
endlocal
exit /b
|
darkelfsfx |
21-08-2016 18:46 2661945 |
Спасибо. Принцип понял.
|
Время: 22:50.
© OSzone.net 2001-