2010-09-23 2 views
0
for /f %%f in ('dir /b C\logs\*.log') do (
for /f "tokens=2,3,4 " %%i in (\\***%%f) do (
    if %%i==START echo %%k 
) 
) 

этот сценарий Виль brouwse все * .log файлы, которые ищут СНВ в качестве второго слова ан затем Виль эхо мне четвертое слово (штамп времени), но я хочу, что штамп времени в вар например, но я не работаюПакетное чтение реж и проблема файла

for /f %%f in ('dir /b C\logs\*.log') do (
for /f "tokens=2,3,4 " %%i in (\\***\%%f) do (
    if %%i==START set timestamp=%%k 
) 
echo %timestamp% 
) 

% timestamp% var пусто, когда я его эхо? может кто-нибудь мне помочь?

Regard Marco

+1

Установить Cygwin , затем запустите скрипт bash. – LatinSuD

+1

@LatinSuD это aa .bat командный скрипт witch - это встроенный инструмент командной строки для windows xp, так почему я должен использовать cygwin для «эмуляции» linux api? – Proxx

ответ

1

Вы изменяете переменную внутри цикла, так что вы должны добавить эту строку в НАЧАЛЕ код:

SETLOCAL ENABLEDELAYEDEXPANSION 

вы также должны изменить

echo %timestamp% 

в

echo !timestamp! 
+0

Thanx для вашего абракатора он решил мою проблему: D – Proxx

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