Const ForReading = 1 Const ForWriting = 2 Const ForAppending = 8 Function WriteToFile(fileName, text, fso) wscript.echo fileName Set f = fso.OpenTextFile(fileName & ".log", ForAppending, True) wscript.echo text f.WriteLine text f.Close End Function dim args set args = wscript.Arguments if args.Count < 1 then wscript.echo "Usage: parse logs.vbs [output folder]" wscript.exit end if dim logFile dim outFolder logFile = args.Item(0) dim fso, fin set fso = CreateObject("Scripting.FileSystemObject") set fin = fso.OpenTextFile(logFile, ForReading, False) if (args.Count > 1) then outFolder = args.Item(1) if fso.FolderExists(outFolder) = False then fso.CreateFolder(outFolder) end if else outFolder = "." end if dim line dim lastFile : lastFile = "NULL" dim regex, match, matches set regex = new RegExp regex.Pattern = "^\[\d{2}:\d{2}:\d{2} (\w+)].*" regex.IgnoreCase = True regex.Global = True while fin.AtEndOfStream <> True line = fin.ReadLine() wscript.echo "Parsing line: " & line set matches = regex.Execute(line) if matches.Count > 0 then lastFile = matches.Item(0).Submatches(0) 'get the new file name end if WriteToFile outFolder & "\" & lastFile, line, fso wend fin.Close set fin = Nothing set fs = Nothing