Page 1 sur 1

SCript spécial

Posté : 14 août 2020 11:09
par poils
Salut,

Après quelques recherches, je bute sur la réalisation d'un script simple sous Windows 10. :D

Je voudrais, à partir d'un batch, faire un ping sur un serveur et si le résultat est négatif (le serveur est injoignable), le script continue à tourner. Par contre, si le serveur devient joignable, le PC émet in BIP. :geek:
J'avais penser mettre le résultat du ping dans un fichier et rechercher un terme du fichier avec une commande FIND mais ça ne marche pas.
Pour info, pour le BIP à émettre, j'avais trouver la commande : rundll32 user32.dll,MessageBeep -1, qui marche très bien.

Est-ce quelqu'un pourrait m'aider ?

Re: SCript spécial

Posté : 25 août 2020 18:07
par Tux 528
Salut !

Pour vérifier si ton serveur est bien disponible, il te suffit de vérifier le contenu de la variable d'environnement %ERRORLEVEL%, qui donne le code d'erreur de la dernière commande exécutée (0 pour un succès ou 1 pour un échec).
Pour voir si la commande exécutée est un succès ou un échec, tu peux utiliser les opérateurs && et || à la suite de celle-ci. "&&" pour exécuter une commande suivante si la première est un succès (-> ne provoque pas d'erreur), et "||" pour n'exécuter la seconde commande qui si la première est un échec (-> provoque une erreur).

Exemple :
ping www.google.fr > NUL && echo Connexion OK ! || echo Connexion impossible.

L'exemple va effectuer un ping sur le serveur français de Google puis va afficher "Connexion OK !" si le serveur est joignable ou "Connexion impossible." si le serveur est injoignable (ou si Windows n'est pas connecté à Internet).

Note : la redirection de la commande ping vers le périphérique "NUL" permet la suppression du résultat de celle-ci, c'est-à-dire le message qui est affiché durant le test (Envoi d’une requête ping...) ou une potentielle erreur, mais tu n'es pas obligé de l'indiquer. ;)

Bonne soirée ! :)