PING .BAT AVEC DATE ET HEURE

PING .BAT AVEC DATE ET HEURE - Divers - Programmation

Marsh Posté le 21-06-2007 à 08:21:26    

Bonjour,  
 
je souhaite créer un .bat ou autre qui permet de me donner si le ping sur une adresse répond avec la date et lheure de réponse.  
 
quand je fait un .bat avec :  
 
ping -t 192.168.0.1 par exemple il me met quand ca répond pas moi je veu seulement renvoyer les résultat quand le ping répond dans un fichier texte avec lheure et la date.  
 
J'aimerai aussi que le ping ce fasse toutes les 2 minutes par exemple au lieu de toutes les secondes.  
 
Merci de votre aide.

Reply

Marsh Posté le 21-06-2007 à 08:21:26   

Reply

Marsh Posté le 21-06-2007 à 11:52:45    

Les pauses de type "wait" (et pas juste la commande "pause" qui requiert une pression de touche) sont assez complexes à mettre en place en batch ... une solution est l'utilisation de choice.com (pas fourni par défaut dans l'install de windows, à aller télécharger dans les tools microsoft) et te laisser googler un peu comment faire ..
 
une autre possibilité, c'est un petit batch de ce type :
 

Code :
  1. ping 192.168.0.1 -n 1
  2. if ERRORLEVEL 1 goto :nok
  3. if ERRORLEVEL 0 goto :ok
  4. echo UNKNOWN ERROR ! >>result.txt
  5. echo |date|find "current" >>result.txt
  6. echo |time|find "current" >>result.txt
  7. goto :end
  8. :nok
  9. echo ERROR ! >>result.txt
  10. echo |date|find "current" >>result.txt
  11. echo |time|find "current" >>result.txt
  12. goto :end
  13. :ok
  14. echo OK ! >>result.txt
  15. echo |date|find "current" >>result.txt
  16. echo |time|find "current" >>result.txt
  17. goto :end
  18. :end


 
que tu exécutes via les Scheduled Tasks toutes les X minutes
 
(Y'a sûrement moyen de faire + propore j'ai juste fait ça fissa un peu broillon ;) )

Reply

Marsh Posté le 21-06-2007 à 12:08:50    

Une autre solution en pur batch sans dépendance externe à part le ping.exe :
 

Code :
  1. @echo off
  2. rem délai en secondes
  3. set delay=120
  4. :loop
  5. ver | time > temp.bat
  6. echo set time=%%4>current.bat
  7. ver | date > temp.bat
  8. echo set date=%%4>current.bat
  9. del temp.bat
  10. del current.bat
  11. echo .
  12. echo --- %date% %time%
  13. echo .
  14. ping.exe -n 1 192.168.0.1
  15. ping.exe -n %delay% 127.0.0.1 >NUL:
  16. goto loop


 
 
Note : j'ai créé ce batch après avoir recherché Google puis en me basant sur les 2 articles suivants :
http://www.robvanderwoude.com/datetime.html
http://www.pcreview.co.uk/forums/thread-1467406.php

Reply

Marsh Posté le 21-06-2007 à 12:31:22    

Merci !
Par contre j'ai pas de résultat dans un fichier texte ...

Reply

Marsh Posté le 21-06-2007 à 12:39:49    

kmloujdi a écrit :

Merci !
Par contre j'ai pas de résultat dans un fichier texte ...


Il te suffit de rediriger la sortie du batch vers le fichier texte, e.g. ping_date.bat > result.txt,
où ping_date.bat est le nom du fichier batch.

Reply

Marsh Posté le 21-06-2007 à 13:19:15    

ou mieux >> result.txt si tu veux un incrément et pas qu'il efface ton fichier à chaque fois ;)

Reply

Marsh Posté le 21-06-2007 à 14:28:21    

Ok merci ca marche Merci !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed