Análisis de un archivo log para script batch

Resuelto
poparnassus Mensajes publicados 462 Estado Miembro -  
poparnassus Mensajes publicados 462 Estado Miembro -
Hola,

Salut MessieuDame :-)

Voila j'ai besoin d'analyse un ensemble de fichier Log qui contient ~1 000 000 de ligne ( voir beaucoup plus, étant donnée que j'arrive pas a déterminer le nombre ^^). J'ai voulue tester un script batch mais il bloque au deuxieme fichier de 364 000 ligne, juste pour le comtpage de ligne lol

Donc que me conseillerez-vous ? un code en C ? plus performant ?

Je recherche des addresses IP differentes du reseau local, donc je veux lister toute les adresse qui ne sont pas en 192.168.xxx.xxx

Ci dessous le code utiliser pour compter les lignes.

Merci de ne pas m'insulter, je sais que le batch est loin d'etre performant lool

Amicalement bonne soirée


@echo off
SETLOCAL enableextensions ENABLEDELAYEDEXPANSION
@for %%n in (%0) do set fold=%%~dpn
::chemin
set archive=%fold%Archive_LOG\local
echo %archive%
pause

::Compteur de ligne des fichier journal
cd %archive%
set /a total=0
for %%A in (*.txt) do (
set /a compt=0
for /f "tokens=*" %%I in ('type "%%A"') do (set /a compt+=1)
echo %%~dpnxA : !compt!
set /a total=!total!+!compt!
)
echo. & echo Total ligne : !total!


Configuration: Windows / Chrome 58.0.3029.110

2 respuestas

  1. barnabe0057 Mensajes publicados 14329 Fecha de registro   Estado Colaborador Última intervención   4 930
     
    @echo off
    setlocal enableextensions enabledelayedexpansion

    set archive=%~dp0Archive_LOG\local

    echo %archive%

    echo.

    ::Compteur de ligne des fichier journal

    cd %archive%

    set /a total=0

    for %%A in (*.txt) do (

    set /a compt=0

    for /f "tokens=*" %%I in ('type "%%A"') do (set /a compt+=1)

    echo %%~nxA : !compt!

    set /a total=!total!+!compt!

    )

    echo. & echo Total lignes : !total!

    echo. & pause

    exit
    0
    1. barnabe0057 Mensajes publicados 14329 Fecha de registro   Estado Colaborador Última intervención   4 930
       
      Si los archivos a analizar son demasiado grandes, quizá puedas añadir una etapa para dividirlos en archivos más pequeños.
      0
  2. yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   Embajador 1 588
     
    hola, ¿por qué contar las líneas si buscas direcciones IP?
    ¿por qué elegiste hacer eso así, qué otras herramientas dominas?
    0
    1. poparnassus Mensajes publicados 462 Estado Miembro 31
       
      ¿Podría hacerlo en C, entonces?
      0
      1. yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   1 588 > poparnassus Mensajes publicados 462 Estado Miembro
         
        si conoces C, podrías hacerlo en C, ¡de hecho!
        0
    2. poparnassus Mensajes publicados 462 Estado Miembro 31
       
      Sí, no sé por qué quería hacerlo en batch, estoy aprendiendo C justamente, así que esto va a ser un ejercicio perfecto sobre la manipulación de cadenas !!!
      0
    3. poparnassus Mensajes publicados 462 Estado Miembro 31
       
      nuevo tema
      0