Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //—ценарий парсинга лога программы "»зумруд" на предмет сообщений об ошибках
- //JScript.
- //2017 г.
- //дл¤ запуска использовать bat - файл с командой : CScript им¤_файла_сценари¤.js %1 //nologo
- var file=""; //полное им¤ файла лога.
- var logArr=[];//вектор имен папок с логами
- var pattern = new RegExp("(сбой)|(err.*)|(.*ќшиб.*)|(.*расс.*)", "i"); //Ўаблон RegExp
- var buf = "";
- var objArgs=WScript.Arguments; //аргументы запуска сценари¤
- var fso=WScript.CreateObject("Scripting.FileSystemObject");
- var fold = fso.GetFolder("C:\\DataIzumrud\\Journals");
- var subfold = new Enumerator(fold.SubFolders);
- for (; !subfold.atEnd();subfold.moveNext()){
- var oFolder=subfold.item();
- logArr.push(oFolder.name);
- }
- logArr.sort(); //сортировка с целью определени¤ самого нового лога.
- file= "C:\\DataIzumrud\\Journals\\"+logArr[logArr.length-1]+"\\izumrud.log";
- //если есть аргумент имени файла - происходит его открытие
- if (objArgs.length>0){
- file = objArgs(0);
- }
- while(1){
- //вывод сообщений об ошибках
- WScript.Echo("‘айл:"+file+":\n*******************************************************************************");
- if (fso.FileExists(file)){
- var txtStream=fso.OpenTextFile(file);
- //чтение всех строк лога и вывод только удовлетвор¤ющих шаблону.
- while(!txtStream.atEndOfStream){
- buf=txtStream.ReadLine();
- if(pattern.test(buf)){
- WScript.Echo(buf);
- }
- }
- }else{
- //если файл лога не существует.
- WScript.Echo("File \'"+file+"\'not found");
- WScript.Quit(1);
- WScript.Echo("\n*******************************************************************************");
- }
- }
- WScript.Echo("ƒля закрытия нажмите Enter");
- //предотвращение автоматического закрыти¤ окна терминала
- WScript.StdIn.ReadLine();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement