(modifié le 15 septembre 2020 à 15:10)

Quoi de plus triste qu'une fenêtre en console avec un fond noir et un texte blanc ?

Si vous avez besoin de savoir quand un serveur a bien redémarré avec un simple ping, il faut garder les yeux rivés sur la console.

Et si à la place nous avions un système de couleur, beaucoup plus visible ?

ping.bat

Le script provient de Albin Sebastian (2010) :

:: Batch Script color Ping By Binbert.com
echo off & cls
set /p IP=Destination :
:top
PING  -n 1 %IP% | FIND "TTL="
IF ERRORLEVEL 1 (SET OUT=4F  & echo Request timed out.) ELSE (SET OUT=2F)
color %OUT%
ping -n 2 -l 10 127.0.0.1 >nul
GoTo top 

Le script ping la destination en boucle et change la couleur de fond en fonction du résultat (rouge ou vert).

Exemple d'utilisation

Admettons que nous souhaitons supprimer un ficher dès que possible, quand il le verrou d'ouverture est libéré sur celui-ci :

@echo off
CLS

TITLE BM-LOOP
set fichier="C:\foobar.txt"

SET COMPTEUR=0

:suppression
CLS
if exist %fichier% (
	del %fichier% >nul
	SET /A COMPTEUR=%COMPTEUR%+1
	TITLE BM-LOOP : %COMPTEUR%
	TIMEOUT /T 1 >nul
	goto suppression
) ELSE (
	echo Suppression OK
	goto FIN
)

:FIN
TITLE ******************** OK ********************
color 2F
TIMEOUT /T 1 > NUL
TITLE                      OK
color F2
TIMEOUT /T 1 > NUL
goto :FIN

echo Fin du script
pause
exit

Ce script va ajouter un titre qui clignote en plus de la couleur, et le nombre de secondes depuis lequel il tourne.

Conclusion

Je me suis servi de ce système à plusieurs reprises pour des bidouilles, c'est simple mais efficace. Je ne parle pas là de supervision, mais d'un besoin ponctuel et pas forcément anticipé. N'allez pas mettre ça à la place d'un Centreon, PRTG, Zabbix ou que sais-je 😋

Auteur : Mr Xhark

Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter