IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Recuperer une valeur temps d'un ping sur host


Sujet :

Scripts/Batch

  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut Recuperer une valeur temps d'un ping sur host
    Bonjour tout le monde ,

    Je me permet de vous contacter car actuellement en stage en techniciens informatique, on ma demander de faire un script pour recéper la valeur temps/ms, mais juste cette valeur et personnellement je sèche totalement je voulais savoir si quelqu'un aurait pu m'aider.

    Pour l'instant je suis parti de ça

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo
    ping -n 2 192.168.1.254 | FIND "temps=" 
    Réponse de 192.168.1.254*: octets=32 temps=1 ms TTL=64

    voila mon résultat
    mais après niveau variables je comprend pas trop je voudrais récupérer juste le 1 de cette exemple : temps=1 ms

    je vous remercie d'avance la communauté

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Voici chez moi le ping. Je n'ai pas de "temps=", ni d’espace entre le 1 et le ms
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ping -n 2 127.0.0.1
    Réponse de 127.0.0.1*: octets=32 temps<1ms TTL=128
    Réponse de 127.0.0.1*: octets=32 temps<1ms TTL=128
    Tu devrais te renseigner sur la commande for /F et sur l'expansion retardée des variables

    Le mieux serais de faire du PowerShell je ne vois pas de contrainte de langage dans ton message

  3. #3
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut
    Salut donc la je suis arrivé à ça actuellement

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Ping -n 1 192.168.0.254 | for /f "tokens=5" %i in ('findstr Réponse') do @echo %i

    Ce qui me donne en résultat temps<1ms maintenant je cale pour récupérer que le 1

    Si vous pouvez m'aider merci

  4. #4
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut
    Citation Envoyé par ericlm128 Voir le message
    Voici chez moi le ping. Je n'ai pas de "temps=", ni d’espace entre le 1 et le ms
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ping -n 2 127.0.0.1
    Réponse de 127.0.0.1*: octets=32 temps<1ms TTL=128
    Réponse de 127.0.0.1*: octets=32 temps<1ms TTL=128
    Tu devrais te renseigner sur la commande for /F et sur l'expansion retardée des variables

    Le mieux serais de faire du PowerShell je ne vois pas de contrainte de langage dans ton message

    Salut donc la je suis arrivé à ça actuellement

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Ping -n 1 192.168.0.254 | for /f "tokens=5" %i in ('findstr Réponse') do @echo %i

    Ce qui me donne en résultat temps<1 maintenant je cale pour récupérer que le 1

    Si vous pouvez m'aider merci

  5. #5
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Je ferais comme ceci (a placer dans un fichier .bat)

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    @echo off
     
    for /f "tokens=5" %%i in ('ping -n 1 127.0.0.1 ^|findstr temps') do set "rep=%%i"
    set "rep=%rep:~6%"
    set "rep=%rep:ms=%"
    echo %rep%
     
    pause



    Voici 2 exemple de ping chez moi, un coup il y a un espace après la valeur un coup non...
    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ping -n 1 127.0.0.1 | findstr temps
    Réponse de 127.0.0.1 : octets=32 temps<1ms TTL=128

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ping -n 1 www.google.fr |findstr temps
    Réponse de 216.58.214.67 : octets=32 temps=2 ms TTL=119


    Il faut avoir conscience que le bat c'est un peu pourri....

  6. #6
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut
    J'ai reussi à la longue maintenant plus cas faire une variable
    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    ping -n 1 192.168.0.254 | for /f "tokens=5 delims==<,ms" %i in ('findstr Réponse') do @echo %i

    merci pour les infos

  7. #7
    Membre Expert
    Femme Profil pro
    ..
    Inscrit en
    Décembre 2019
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 95
    Localisation : Autre

    Informations professionnelles :
    Activité : ..

    Informations forums :
    Inscription : Décembre 2019
    Messages : 725
    Par défaut
    Salut,

    un exemple avec wmi

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for /f "tokens=*" %%i in ('wmic Path Win32_PingStatus WHERE "Address='example.com' AND StatusCode=0" Get ResponseTime /format:value ^| findstr /il /c:"ResponseTime=" ') do @set "%%~i"
    echo %ResponseTime%

  8. #8
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Code inspiré par la réponse de @kaitlyn pour faire un multi ping sur plusieurs hosts à la fois afin de récupérer leurs adresses IP et leurs temps de réponse
    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
    @echo off & color 0B
    Title Pinging and Get IP Address and Response Time with WMIC 
     
    Set Hosts=google.com yahoo.com example.com stackoverflow.com orange.com avast.com kaspersky.com bitdefender.com ^
    developpez.net reddit.com pastebin.com facebook.com twitter.com instagram.com opendns.com
     
    echo(
    setlocal EnableDelayedExpansion
    @for %%h in (%Hosts%) do (
        Call :GetPingResults %%h
        echo( Host         : "%%h"
        echo( IP Address   : !ProtocolAddress!
        echo( ResponseTime : !ResponseTime!
        echo(----------------------------------
    )
    pause
    Exit
    ::------------------------------------------------------------------------------------------------------------------------------------------
    : GetPingResults 
    @for /f "tokens=* delims=" %%a in (
        'wmic Path Win32_PingStatus WHERE "Address='%1' AND StatusCode=0" Get ProtocolAddress^,ResponseTime /value 2^>nul ^| findstr /v "^$"'
    ) do (
        @set "%%~a"
    )
    Exit /b
    ::------------------------------------------------------------------------------------------------------------------------------------------

  9. #9
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    à la fois
    Parallèlement, simultanément ?

  10. #10
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut
    salut tout le monde déjà merci pour votre aide alors je rencontre un problème quand j'execute mon .bat j'ai erreur a n'est pas attendu, je comprend pas pourquoi car quand je tape la commande dans cmd aucune erreur et quand je le lance depuis le path j'ai cette erreur.

    @echo off
    for /f "tokens=10 delims==ms" %a in ('ping -n 1 google.fr') do echo %a
    merci

  11. #11
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut
    Citation Envoyé par franck352 Voir le message
    salut tout le monde déjà merci pour votre aide alors je rencontre un problème quand j'exécute mon .bat j'ai erreur a n'est pas attendu, je comprend pas pourquoi car quand je tape la commande dans cmd aucune erreur et quand je le lance depuis le path j'ai cette erreur.
    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    @echo off
    for /f "tokens=10 delims==ms" %a in ('ping -n 1 google.fr') do echo %a
    merci
    En Batch il faut échapper le caractère % par un autre %%

    for /f "tokens=10 delims==ms" %%a in ('ping -n 1 google.fr') do echo %%a


    Voici une bonne liste de caractères à échapper caractères à échapper

  12. #12
    Membre Expert
    Femme Profil pro
    ..
    Inscrit en
    Décembre 2019
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 95
    Localisation : Autre

    Informations professionnelles :
    Activité : ..

    Informations forums :
    Inscription : Décembre 2019
    Messages : 725
    Par défaut
    Si tu tiens absolument au ping, voici une version avec et bien sûr que partiellement locale-agnostique, forcément.


  13. #13
    Membre à l'essai
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Octobre 2021
    Messages : 6
    Par défaut
    Citation Envoyé par hackoofr Voir le message
    En Batch il faut échapper le caractère % par un autre %%

    for /f "tokens=10 delims==ms" %%a in ('ping -n 1 google.fr') do echo %%a


    Voici une bonne liste de caractères à échapper caractères à échapper

    Merci oui la ça fonctionne mieux par contre j'ai un espace en juste devant le résultat du ping faut que j'arrive a le supprimé.

    Et dire que je fais ça pour cacti pour avoir un graph avec un script batch de ping machine j’espère finir par y arriver.

    merci encore pour votre aide a tous

  14. #14
    Membre Expert
    Femme Profil pro
    ..
    Inscrit en
    Décembre 2019
    Messages
    725
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 95
    Localisation : Autre

    Informations professionnelles :
    Activité : ..

    Informations forums :
    Inscription : Décembre 2019
    Messages : 725
    Par défaut
    Voici le code qui n'est pas dans le précédent message,

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=8 delims=:<m= " %%i in ('ping -4 -n 1 example.com ^| findstr /i ttl') do echo "%%i"

  15. #15
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    salut tout le monde déjà merci pour votre aide alors je rencontre un problème quand j'execute mon .bat j'ai erreur a n'est pas attendu, je comprend pas pourquoi car quand je tape la commande dans cmd aucune erreur et quand je le lance depuis le path j'ai cette erreur.

    @echo off
    for /f "tokens=10 delims==ms" %a in ('ping -n 1 google.fr') do echo %a
    merci
    Voir les réponses déjà proposées ci-dessus

Discussions similaires

  1. [XL-2010] Se placer sur une colonne en fonction d'une valeur temps
    Par Titian dans le forum Excel
    Réponses: 7
    Dernier message: 17/07/2014, 17h22
  2. [Toutes versions] Formule pour recuperer une valeur sur un autre fichier Excel
    Par bonilla dans le forum Excel
    Réponses: 2
    Dernier message: 26/06/2012, 12h19
  3. Recuperer une valeur dans une grille sur une image
    Par gwal21 dans le forum Images
    Réponses: 3
    Dernier message: 27/02/2011, 00h41
  4. Recuperer une valeur sur j-1
    Par arnaud.barre dans le forum Deski
    Réponses: 5
    Dernier message: 24/04/2007, 16h18
  5. Recuperer une valeur en Perl sur un site
    Par lnegri dans le forum Web
    Réponses: 10
    Dernier message: 11/07/2005, 22h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo