1 (изменено: SeaVodikendu, 2016-05-14 08:16:44)

Тема: AHK: Loop. Сортировка файлов по дате

Здравствуйте.
Суть скрипта:
Программа сохраняет логи в файл, в названии котором есть "console".
Скрипт находит последний измененный файл и выводит его директорию.
Далее из этой директории идет поиск определенных строк.

При проверке вручную или посредством "FileAppend" добавлять строки в файл, скрипт отлично работает.
Но когда программа обращается к "console*.log" изменяет файл, первый Loop не находит его, пока я вручную не обновлю папку.
Подскажите, в чем проблема?


pop:
Loop, A_WorkingDir\console*.log, 0, 1
if (A_LoopFileTimeModified >= TempVar)
		{
		NewestFolder := A_LoopFileFullPath	, TempVar := A_LoopFileTimeModified
}
Loop, read, %NewestFolder%
    {
    last_line := A_LoopReadLine
    pred_line := last_line
    }
if (last_line = "Яблоко" or pred_line = "Яблоко" or last_line = "Груша" or pred_line = "Груша")
{     
C=1
msgbox, %NewestFolder% содержит %last_line% %pred_line%
}
If !c
{
MsgBox, Не нашел
goto, pop
}

2

Re: AHK: Loop. Сортировка файлов по дате

Неясна задача. Предлагаю автору обрисовать ещё раз. Чтобы алгоритм был понятен, а слова в предложениях были согласованы.

3

Re: AHK: Loop. Сортировка файлов по дате

Dota 2 (ПК игра) сохраняет логи в файл console.log в директорию игры.
Иногда игра меняет файл для сохранение логов, оставляя префикс "console". Например "console.345561243.log".
Задача 1 (Первый "Loop"): Проверять директорию игры и находить последний измененный файл с префиксом "console".
Второй "Loop", отдельно работает как надо с заранее выбранным файлом.

4

Re: AHK: Loop. Сортировка файлов по дате

Переменные типа A_LoopFileFullPath существуют только внутри цикла. А рамки цикла нужно задавать фигурными скобками. Сеанс телепатии закончен. http://i.istockimg.com/file_thumbview_approve/19627350/5/stock-photo-19627350-vintage-mind-reader.jpg

Переношу тему в AutoHotKey — Games.

5

Re: AHK: Loop. Сортировка файлов по дате

Да, но...

При проверке вручную или посредством "FileAppend" добавлять строки в файл, скрипт отлично работает.

Почему в этом случае работает?