Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: thexmachine en 25 Abril 2017, 19:52 pm



Título: [BAT] Generar txt registro simplificado
Publicado por: thexmachine en 25 Abril 2017, 19:52 pm
Hola amigos,
Tengo el siguiente archivo de registro (log-web):

2017.04.24-16:52:42 <10.10.10.1>: web-proxy,debug logaccount:     GET http://www.msftncsi.com/ncsi.txt HTTP/1.1
2017.04.24-16:52:42 <10.10.10.1>: web-proxy,debug logaccount:     User-Agent: Microsoft NCSI
2017.04.24-16:52:42 <10.10.10.1>: web-proxy,debug logaccount:     Host: www.msftncsi.com
2017.04.24-16:52:42 <10.10.10.1>: web-proxy,debug logaccount:     X-Proxy-ID: 1806486836
2017.04.24-16:52:42 <10.10.10.1>: web-proxy,debug logaccount:     X-Forwarded-For: 192.168.13.221
2017.04.24-16:52:42 <10.10.10.1>: web-proxy,debug logaccount:     Via: 1.1 192.168.0.1 (Mikrotik HttpProxy)
2017.04.24-16:52:42 <10.10.10.1>: web-proxy,debug logaccount:


Debe ser configurado de forma txt (newlog.txt):
GET http://www.msftncsi.com/ncsi.txt
192.168.13.221
2017.04.24-16:52:42

Pero (newlog.txt):
GET http://www.msftncsi.com/ncsi.txt  192.168.13.221 2017.04.24-16:52:42

Traté de hacer algo
Código
  1.  @Echo OFF & SetLocal EnableDelayedExpansion & Title by Elektro
  2.  
  3.    Set /A "flag=0"
  4.  
  5.    For /F "UseBackQ Tokens=* Delims=" %%a In (
  6.        "C:\Documents and Settings\Unifi\Desktop\Syslog25042017.txt"
  7.    ) Do (
  8.        (Echo "%%a" >>teste5.txt | Find.exe /I "logaccount:     GET")1>Nul && (Set /A "flag=0")
  9.        (Echo "%%a" >>teste5.txt | Find.exe /I "logaccount:     Host:")1>Nul && (Set /A "flag=1")
  10.        (Echo "%%a" >>teste5.txt | Find.exe /I "logaccount:     X-Forwarded-For:")1>Nul && (Set /A "flag=2")
  11.  
  12.        If !flag! EQU 0 (Url: %%a)
  13.        If !flag! EQU 1 (Host  : %%a)
  14.        If !flag! EQU 2 (IP     : %%a)
  15.  
  16.    )
  17.  
  18.    Pause&Exit /B 0

¿Alguien me ayuda?
Gracias por todo  ;D