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 :

Récuperer dans une variable, la valeur d'une commande


Sujet :

Scripts/Batch

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Par défaut Récuperer dans une variable, la valeur d'une commande
    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
    set count=0
    :boucle
    
    set /a count = count + 1
    if %count%==3 goto finboucle
    
    
    set "ligne="
    
    
    for /f "tokens=1 delims=," %%a in ('more/e +%%count%% ^< "%chemin%\num2.txt"') do (
    if not defined ligne set "ligne=%%a" 
    
    
    )
    
    
    echo %ligne%
    
    
    goto boucle
    
    
    :finboucle
    Bonjour,

    J'ai un fichier texte "num2.txt" qui contient les valeurs suivantes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    2,[HKEY_LOCAL_MACHINE\SOFTWARE\xxx] 
    5,[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\xxx]
    Donc avec mon code je veux extraire le numéro de la ligne et le mettre dans une variable pour l'utiliser par la suite.

    donc garder que le 2 et le 5

    et le mettre dans la variable ligne+compteur

    Comment je pourrais faire ça???

    Merci

  2. #2
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut
    ben tu fais 2 tests sur le 1° token et tu initialises 2 variables correspondantes, je vois pas ou es la difficulté.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Par défaut
    Pas bien compris

    Mais il peut y avoir 2/3/4/5 lignes donc 5 numéros à récupérer, donc il faudrait un nom de variable un un cpt autoalimenté

  4. #4
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut
    Ok, je croyais que tu voulais la ligne 2 et 5. si c'est ça c'est encore plus simple, regarde l'option tokens de la commande for.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Par défaut


    en faite j'ai pas du bien m'expliquer mais %ligne% je récupère bien le 2 et le 5
    ce que j'arrive pas à faire c'est a le stocker dans une variable genre

    set var%cpt% = %ligne%

    echo %var%cpt%%

    ça renvoie var2

    Merci de ton aide

  6. #6
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut
    exemple a,b,c,d

    ... tokens=1,2* delims=, ... %%i in ...

    %%I => a
    %%J => b,c,d

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Par défaut
    Si je fais ça il va me donner le numéro en %%i et en %%j je vais avoir "[HKEY_LOCAL_MACHINE\SOFTWARE\xxx] "

    Je n'y comprend plus rien

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 48
    Par défaut
    Je n'arrive toujours pas à me dépêtrer de ce code

    Merci de tes explications mais je coince tout de même.

  9. #9
    Membre Expert
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013
    Par défaut
    salut,

    je ne vois pas de problème dans ta demande, ou j'ai pas bien compris

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    2,[HKEY_LOCAL_MACHINE\SOFTWARE\xxx] 
    5,[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\xxx]
    et le code batch:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    set "$var="
    for /f "tokens=1* delims=," %%a in (ton_fichier) do set "$var%%a=%%b"
    set $var

Discussions similaires

  1. [PPT-2007] Afficher dans une forme la valeur d'une variable
    Par JLBERTHEAS dans le forum VBA PowerPoint
    Réponses: 1
    Dernier message: 01/10/2009, 21h31
  2. Réponses: 10
    Dernier message: 02/04/2009, 14h24
  3. Changer dans un fichier la valeur d'une variable
    Par platax dans le forum Langage
    Réponses: 3
    Dernier message: 16/10/2008, 15h07
  4. Réponses: 5
    Dernier message: 06/04/2007, 14h05
  5. Réponses: 20
    Dernier message: 03/04/2007, 16h45

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