Page 1 sur 1
comparer un résultat dans un fichier et remonter une alerte
Posté : 17 févr. 2009 16:19
par bomonde
Le script que j'ai fais (en fin de mail) me donne le résultat suivant dans mon fichier "bandeau.txt" :
---------- C:\TEMP\NBRE-DE-CLOSEWAIT-SUR-PORTS-4700.TXT: 0
Tue 02/17/2009 14:15:00.58
J'aimerai savoir comment faire pour que j'ai une erreur qui remonte des que le resultat est à 0
Merci d'avance.
Ci-dessous mon script.(y a mieux mais ca marche lol)
Code : Tout sélectionner
netstat -an | find /n "4700" >> netstat.txt
findstr /r /n /s "4700" "CLOSE_WAIT" C:\temp\netstat.txt > C:\temp\nbre-de-CLOSEWAIT-sur-ports-4700.txt
find /C "test.txt" C:\temp\nbre-de-CLOSEWAIT-sur-ports-4700.txt >> C:\temp\bandeau.txt
echo %date% %time% >> bandeau.txt
del netstat.txt nbre-de-CLOSEWAIT-sur-ports-4700.txt
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 17 févr. 2009 16:22
par bomonde
des que le resultat est different de '0' je voulais dire dans mon message ci-dessus.
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 17 févr. 2009 18:52
par Batch_Man
Salut !
Non testé:
Code : Tout sélectionner
@echo off
For /f "tokens=*" %%a in ('type "bandeau.txt" ^| Find "------"') do (
for /f "tokens=2 delims=." %%i in ('echo %%a') do (
if /i "%%i"=="TXT: 0" echo %%a: ERREUR)
)
)
pause
Batch_Man
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 18 févr. 2009 16:51
par bomonde
en fait bacth man c'est des que le résultat est superieur à 50
decidement je vais y arriver lol
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 18 févr. 2009 20:06
par Batch_Man
Bonsoir,
Essaye ceci:
Code : Tout sélectionner
For /f "tokens=*" %%a in ('type "bandeau.txt" ^| Find "------"') do (
for /f "tokens=4 delims=: " %%i in ('echo %%a') do (
if %%i GTR 50 echo %%a - ERREUR)
)
)
Batch_Man
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 20 févr. 2009 16:28
par bomonde
ca marche en effet mais comment rediriger les erreurs dans un fichiers erreur.txt par exemple
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 20 févr. 2009 18:33
par Batch_Man
Voilà
Code : Tout sélectionner
For /f "tokens=*" %%a in ('type "bandeau.txt" ^| Find "------"') do (
for /f "tokens=4 delims=: " %%i in ('echo %%a') do (
if %%i GTR 50 echo %%a - ERREUR >> erreur.txt)
)
)
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 21 févr. 2009 17:36
par bomonde
C'est OK avec le script ci-dessous
Set OK=%date% %time% ---- NB.CLOSEWAIT:4700 [0] ^>bandeau.txt
Set KO=%date% %time% ------ [ALERT] ------- ^>ko-bandeau.txt
::-
netstat -an |Find "4700"|Find "CLOSE_WAIT">NUL &&Echo.%KO% ||Echo.%OK%
Pause
Merci à tous pour votre aide.. (spécialement à toi batchman
) )
Re: comparer un résultat dans un fichier et remonter une alerte
Posté : 21 févr. 2009 18:05
par Batch_Man
Bonjour,
Je trouve que mon code est beaucoup plus propre !
Et en plus il ne se trompera jamais
Batch_Man