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 :

Mettre le résultat d'une commande dans une variable


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 63
    Par défaut Mettre le résultat d'une commande dans une variable
    Bonjour tous le monde,

    1.
    Voila je me suis mis à la programmation batch depuis hier,le but étant de créer une clé usb bootable (MS-DOS 98),le logiciel bien qu'il ne me convienne pas à mes attentes fonctionne, seulement pour un soucis d'affichage et de clarté j'aimerai faire une tableau.

    voila donc comment mettre le résultat de cette commande dans une variable

    [commande]
    FSUTIL FSINFO DRIVEtype L:
    [/commande]


    2.
    Comment je pourrait découper le résultat en 2 en supprimant les 2 espaces et le carachtère "-".

    [resultat a découper]
    C: - Lecteur fixe
    [/resultat a découper]

    Voici ce que j'aimerai obtenir

    %LecteurActif% = C: - Lecteur fixe
    %LettreLecteur% = C:
    %TypeLecteur% = Lecteur fixe


    Voilà j'éspère avoir été assez clair dans la déscription de mon problème

  2. #2
    Expert confirmé
    Avatar de shawn12
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2006
    Messages
    3 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2006
    Messages : 3 368
    Par défaut
    Par "le résultat de la commande", tu veux dire le texte qui est affiché par la commande dans la console lors de son exécution ou juste le code retour ?

    Sinon, tu peux mettre ce que t'affiche la commande dans un fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nom_commande.exe param1 param2>fichier.txt
    Le code retour de la commande est normalement déjà contenu dans une variable (%errorlevel%).

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 63
    Par défaut RE
    Merci de ta réponse,

    Oui je veut dire "le texte qui est affiché par la commande dans la console lors de son exécution".

    J'ai essayé d'écrire le résultat dans un fichier texte et de l'afficher mais je n'arrive toujours pas le découper en 2.

    Sinon il n'y a pas d'autre alternative que d'écrire la réponse dans un fichier texte? ne peut t'on pas le charger dans une variable pour pouvoir le decouper et le réassigner a 2 autre variable pour pouvoir l'afficher dans un tableau?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 63
    Par défaut re
    Merci pour tout,
    J'ai trouvé comment faire pour mettre chaque ligne dans une variable puis la découper pour l'afficher dans un tableau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    for /f "tokens=1* delims=:" %%i in ('findstr /n /r . lecteur.txt') do set vr%%i=%%j
    
    
    echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
    echo ºLettre ºType de lecteur  ºInformation sur le lecteur         º
    echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
    IF not "%vr1%"==""    echo  %vr1:~0,1%     %vr1:~5,20%  %vr1:~25,200%
    IF not "%vr2%"==""    echo  %vr2:~0,1%     %vr2:~5,20%  %vr2:~25,200%
    IF not "%vr3%"==""    echo  %vr3:~0,1%     %vr3:~5,20%  %vr3:~25,200%
    IF not "%vr4%"==""    echo  %vr4:~0,1%     %vr4:~5,20%  %vr4:~25,200%

  5. #5
    Membre émérite
    Avatar de maxim_um
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 895
    Par défaut
    Salut,

    À moins que tu ne te trompes de version, ton script n'a aucune chance de fonctionner sous

    Citation Envoyé par daviddu54 Voir le message
    MS-DOS 98

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 63
    Par défaut re
    Salut,

    Il fonctionne sous xp et créé un clé USB bootable (émulation disquette de boot win 98)

  7. #7
    Membre émérite
    Avatar de maxim_um
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 895
    Par défaut
    Donc ce script n'est pas destiné à ms-dos. C'est en fait ton premier message qui pouvait prêter à confusion. Alors bonne continuation.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for /F "delims=- tokens=1,*" %%i in ('fsutil fsinfo drivetype c:') do set LettreLecteur=%%i & set TypeLecteur=%%j & set LecteurActif=%%i-%%j

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 63
    Par défaut re
    merci ca ma bien aider ton bout de script,j'ai même appris que l'on pouvait mettre 2 commandes SET à la suite,j'ai accoupler ton bout de script avec un autre que j'avait déjà,mais ca ne marche pas ensemble,mais séparer ca marche,tu peut regarder?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    FOR /F "tokens=1,2,3 delims=\ " %%A IN ('FSUTIL FSINFO DRIVES ^| MORE /E /T0') DO (
    IF "%%B"=="" (
    for /F "delims=- tokens=1,*" %%i in ('fsutil fsinfo drivetype %%A') do set LettreLecteur=%%i & set TypeLecteur=%%j
    ECHO  %LettreLecteur%   %TypeLecteur%
     )
    )

  9. #9
    Membre émérite
    Avatar de maxim_um
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 895
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    @echo off
    for /f "skip=2 tokens=1 delims=\" %%a IN ('FSUTIL FSINFO DRIVES ^| MORE /E /t0') do call :identify %%a
    pause
    goto fin
    
    :identify
    for /f "delims=- tokens=1,*" %%i in ('fsutil fsinfo drivetype %1') do set LettreLecteur=%%i & set TypeLecteur=%%j
    echo  %LettreLecteur%   %TypeLecteur%
    goto :eof
    :fin
    si bien sûr c'est ce que tu cherches à faire.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT 1.0] Mettre le résultat de l'appel d'une fonction dans une variable
    Par Giovanny Temgoua dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 16/01/2012, 17h47
  2. Réponses: 4
    Dernier message: 02/07/2008, 11h32
  3. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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