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

Windows Discussion :

Batch récupérer une valeur


Sujet :

Windows

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Points : 2
    Points
    2
    Par défaut Batch récupérer une valeur
    Bonjour je souhaite récupérer une valeur de la commande
    netsh -c interface show la valeur gateway et la mettre dans une variable


    comment cela est il possible ? en batch

    c'est la fonction chercher qui me pose problème


    Merci

    Cordialement

  2. #2
    Membre éclairé Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Points : 723
    Points
    723
    Par défaut
    Bonjour,

    EDIT://
    Après relecture, je pense que j'avais mal compris le problème ^^
    Tu peux en batch redirigé la sortie de la commande (netsh -c > sortie.txt) puis effectuer des recherches dans celle-ci via findstr
    “La seule révolution possible, c'est d'essayer de s'améliorer soi-même, en espérant que les autres fassent la même démarche. Le monde ira mieux alors.”

  3. #3
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Pour mettre dans un variable, essaye ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "delims=" %%i in ('netsh -c interface show') do echo %%i

  4. #4
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    KoKotis tu pourrais m'expliquer ta ligne de commande ? enfin "delims=" ?

    Merci

  5. #5
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Ben la enfaite, il ser a rien le delim, mais si non il ser a désigner un caractére delimitateur, pour ne récupérer qu'un partie du texte renvoieyer par la commande grace au tokens


    Si tu veut ne récupére qu'un partie de ce qui t'est renvoyer par netsh -c interface show montre moi ce que la commande te renvoi et dit moi ce que tu veut récupérer je te ferai un exemple

  6. #6
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    je me suis tromper dés le début de mon poste la commande c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    netsh -c interface dump
    et non
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    netsh -c interface show
    désolé

    ensuite je voudrai récupérer que l'adresse ip de la passerelle pour mettre celle ci dans une variable pour pouvoir l'utiliser par la suite.

  7. #7
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "delims=" %%i in ('netsh -c interface dump') do echo %%i
    Que veut tu récupérer dans le résulta de ta commande ?

  8. #8
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    la commande me renvoi cela :
    Code : 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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     # Fin de la configuration IP de l'interface 
    #======================== 
    # Configuration de l'interface 
    #======================== 
    pushd interface 
    reset all 
    popd 
    # Fin de la configuration de l'interface 
    #======================== 
    # Configuration de l'interface 
    #======================== 
    pushd interface ipv6 
    uninstall 
    popd 
    # Fin de la configuration de l'interface 
    # ---------------------------------- 
    # Configuration ISATAP 
    # ---------------------------------- 
    pushd interface ipv6 isatap 
    popd 
    # Fin de la configuration ISATAP 
    # ---------------------------------- 
    # Configuration de 6to4  
    # ---------------------------------- 
    pushd interface ipv6 6to4 
    reset 
    popd 
    # Fin de la configuration de 6to4 
    #=============================== 
    # Configuration du proxy de port 
    #=============================== 
    pushd interface portproxy 
    reset 
    popd 
    # Fin de la configuration du proxy de port 
    # ----------------------------------  
    # Configuration IP de l'interface          
    # ----------------------------------  
    pushd interface ip 
    # Configuration IP de l'interface pour "Connexion au r‚seau local" 
    set address name="Connexion au r‚seau local" source=dhcp  
    set dns name="Connexion au r‚seau local" source=dhcp register=PRIMARY 
    set wins name="Connexion au r‚seau local" source=dhcp 
    # Configuration IP de l'interface pour "Connexion r‚seau sans fil 2" 
    set address name="Connexion r‚seau sans fil 2" source=static addr=192.168.0.25 mask=255.255.255.0 
    set address name="Connexion r‚seau sans fil 2" gateway=192.168.0.2 gwmetric=0 
    set dns name="Connexion r‚seau sans fil 2" source=static addr=212.27.54.252 register=PRIMARY 
    add dns name="Connexion r‚seau sans fil 2" addr=212.27.53.252 index=2 
    set wins name="Connexion r‚seau sans fil 2" source=static addr=none 
    popd 
    # Fin de la configuration IP de l'interface
    je voudrais récupérer que 192.168.0.2 pour mettre dans une variable sachant que je ne veut pas faire un tri par l'adresse ip mais par le mot gateway par exemple. Car j'ai plusieurs réseaux avec des adresses de passerelles différentes

  9. #9
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=4 delims= " %%i in ('netsh -c interface dump ^| find "gateway"') echo %%i

  10. #10
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    c'est pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=4 delims= " %%i in ('netsh -c interface dump ^| find "gateway"') do echo %%i
    manque le do mais cela ne me renvoi que le mot réseau.

  11. #11
    Débutant  
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Points : 2 415
    Points
    2 415
    Par défaut
    Effectviement, erreur trés bête de ma par j'ai omi le do, et c'est token=8:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=8 delims= " %%i in ('netsh -c interface dump ^| find "gateway"') echo %%i
    Mais enfait la ca va récupéré gateway=192.168.0.2, pour ne récupéré que l'ip il faut faire une double boucle, je te laisse essayer, si tu n'y arrive pas je te le ferai

  12. #12
    Candidat au Club
    Inscrit en
    Janvier 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    Ok merci de ton aide précieuse je vais lire un peu plus l'aide pour tokens et delims et voir si j'arrive a faire cela.

Discussions similaires

  1. [XSL]récupérer une valeur de plusieurs fichiers XML
    Par snoop dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 05/02/2006, 00h32
  2. problème pour récupérer une valeur dans ma bd (débutante)
    Par auryn111 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 26/08/2005, 17h49
  3. Réponses: 2
    Dernier message: 17/06/2005, 13h38
  4. Réponses: 7
    Dernier message: 15/03/2005, 14h44
  5. Réponses: 2
    Dernier message: 11/12/2004, 21h20

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