BAT файл, время в цикле
Всем доброго времени суток! Ребят, подскажите, каким образом обойти следующую неприятность. Имеет batch файл следующего содержания:
Код:
@echo off
@SETLOCAL
@CHCP 1251
@CLS
FOR /F "USEBACKQ DELIMS=" %%a IN ("dblist.txt") DO (
ECHO ' >> log.txt
ECHO "%date% %time% - begin: %%a" >> log.txt
"C:\Program Files (x86)\XSoft\App\Bin.exe" %%a"
ECHO "%date% %time% - end: %%a" >> log.txt
ECHO ' >> log.txt
)
"Думает" скрипт довольно долго, ожидая завершения запущенного процесса, а время выводит все время одно и тоже. Переменные %date% %time% в цикле не обновляют свои значения , что можно сделать, каким образом получить для каждой итерации актуальное время?
|
если моя память не спит с другим достаточно в SETLOCAL указать ENABLEDELAYEDEXPANSION и при запросе даты времени вместо %% использовать !!
Код:
@echo off
@SETLOCAL ENABLEDELAYEDEXPANSION
@CHCP 1251
@CLS
FOR /F "USEBACKQ DELIMS=" %%a IN ("dblist.txt") DO (
ECHO ' >> log.txt
ECHO "!date! !time! - begin: %%a" >> log.txt
"C:\Program Files (x86)\XSoft\App\Bin.exe" %%a"
ECHO "!date! !time! - end: %%a" >> log.txt
ECHO ' >> log.txt
)
|
alex25ru, можно использовать сторонние утилиты типа now.exe из старого доброго RK
|
Elven, работает как надо. В общем то, что доктор прописал. Большое спасибо, тему можно закрывать.
Опиум, не хочется ничего лишнего.
|
Время: 23:27.
© OSzone.net 2001-