Bonjour,
Voila mon souci.
Je dois transformer un fichier TXT en HTML, jusque là pas de problème, mais en fonction du résultat de ma ligne dans le TXT je dois l'ecrire en couleur dons mon HTML en vert les OK et rouge les PB.
dons mon txt, il y a les lignes suivantes :
mon code:[10/09/2021] CONNECTION AU xxx.xxx.xxx.200 ------------------------------- OK
-----------------------------------------------------------------------------------------------------------------
[10/09/2021] CONNECTION AU xxx.xxx.xxx.201 --------------- OK
-----------------------------------------------------------------------------------------------------------------
[10/09/2021] CONNECTION AU xxx.xxx.xxx.202 ------------------- PB
-----------------------------------------------------------------------------------------------------------------
[10/09/2021] CONNECTION AU xxx.xxx.xxx.203 --------------- OK
-----------------------------------------------------------------------------------------------------------------
[10/09/2021] CONNECTION AU xxx.xxx.xxx.204 ------------------- PB
-----------------------------------------------------------------------------------------------------------------
[10/09/2021] CONNECTION AU xxx.xxx.xxx.205 --------------------------- OK
-----------------------------------------------------------------------------------------------------------------
Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 Rem *************** Conversion HTML ******************* @ECHO OFF SETLOCAL enabledelayedexpansion SET "br=^<br^>" SET "hr=^<hr^>" SET "h1=^<h1^>" SET "sh1=^</h1^>" SET "bold=^<b^>" SET "sbold=^</b^>" SET "fcr=^<font color="red"^>" SET "fcg=^<font color="green"^>" set aa=%date:~6,4% set mm=%date:~3,2% set jj=%date:~0,2% set DD=%jj%%mm%%aa% set fichier=ping.log ( FOR /f "delims=" %%i IN ('type %fichier%^|findstr /n "$"') DO ( SET line=%%i&CALL :test ) )>pingcolor.html exit :test :: remove line number from line SET "line=%line:*:=%" IF NOT DEFINED line ECHO(%br%&GOTO :EOF SET "line2=%line:"=_%" SET "line3=%line:"=%" IF NOT "%line2%"=="%line3%" GOTO ecrire IF "%line%"=="===" ECHO(%hr%&GOTO :EOF IF "%line:~0,5%"=="Date:" ECHO(%bold%%line%%sbold%&GOTO :EOF IF "%line:~0,2%%line:~-2%"=="****" ECHO(%h1%%line:~2,-2%%sh1%&GOTO :EOF :ecrire ECHO(%fcr%!line!%br% GOTO :eof
je peux tout écrire en rouge ou en vert, mais je ne sais pas comment tester le PB ou le OK pour une sortie differentiée.
Merci de votre aide.
Partager