Комрады, любители ВижлБэйсика, на днях потребовалось написать скрипт на обработку логов. Из меня скриптописальщик такой же как из Шойгу фумелье и из Нино Катамадзе сварщик. Большую часть написал, и оно даже каким то образом работает. Притом оно работает правильно.
Мой скрипт делает следующее: в файле input.txt ищет "порядок символов" которое задаем и в новый файл output.txt записывает всю строку содержащую такой порядок. Т.е задав Иванов мы получим выборку всех его логов.
Пример скрипта который работает:
- Код: Выделить всё
Option Explicit
Dim fso, tsIn, tsOut, str
Set fso= Createobject("Scripting.FileSystemObject")
Set tsIn = fso.OpenTextFile("input.txt", 1, 0) ' открываем файл для чтения
Set tsOut = fso.OpenTextFile("output.txt", 8, true, 0) ' открываем файл для дозаписи в конец, если файла нет создаем его
Do While Not tsIn.AtEndOfStream
str = tsIn.ReadLine 'читаем построчно исходный файл
If UBound(Split(str, "Ivanov"))>0 Then 'ищем искомое слово в строке
tsOut.WriteLine str 'записываем найденную строку в выходной файл
End If
Loop
tsIn.Close
tsOut.Close
Set fso = Nothing
Собственно все это хорошо, но каждый день создается файл Лога формата "15.08.2012".
Как в VBS применить мой скрипт хотябы ко всем файлам .tхt находящимся в папке? В идеале конечно еще бы задавать диапазон файлов по месяцу (12.08.2012-15.08.2012). Короче необходимо наити Иванова во всех файлах и записать его в инпут.
Нашел где-то пример как считывать файлы из папки, но прикрутить его к моему скрипту не позволяет количество серого вещества:
- Код: Выделить всё
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set fldr = objfso.getFolder("c:\FolderName")
Set objFiles = fldr.files
For Each iFile in objFiles
sName = iFile.name
За помощь благодарствую. Жду ответа как соловей лета.