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 :

[Batch]Appui touche "entrée" innatendu


Sujet :

Scripts/Batch

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 72
    Points : 52
    Points
    52
    Par défaut [Batch]Appui touche "entrée" innatendu
    Bonjour tout le monde,

    j'écris un fichier .bat que je vais mettre sur un dvd bootable afin de descendre une image ghost.

    Voici mon batch:

    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
    @echo off
    :début
    echo Deploiement de l'image Image.gho
    echo.
    echo 1 : Lancement du deploiement de l'image
    echo 2 : Quitter
    echo.
    
    set /p choix=Entrer un chiffre : 
    
    if not %choix%=="" goto MenuDefaut
    
    if %choix%==1 goto Menu1
    if %choix%==2 goto Menu2
    
    echo Commande %choix% incorrecte 
    goto MenuDefaut
    
    :Menu1
    echo Lancement du deploiement & goto:Ghost
    :Menu2
    goto:eof
    :MenuDefaut
    goto:début
    
    :Ghost
    echo on lance le ghost
    pause
    cd \Ghost
    
    start ghost.exe
    Le pb c'est que si l'utilisateur tape la touche "entrée" sans avoir entré un chiffre, ça me provoque une erreur innatendue et me ferme illico mon batch.

    Comment peut on intercepter cet appui sur la touche "entrée"? Ou existe il une autre méthode?

    Merci

  2. #2
    Membre émérite Avatar de Drizzt [Drone38]
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2004
    Messages
    1 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 001
    Points : 2 453
    Points
    2 453
    Par défaut
    Pour faire un menu il y a l'executable CHOICE.exe sinon (à télécharger si tu ne l'as pas par défaut)

    Un exemple d'utilisation de CHOICE :

    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
    :choix  
        
    cls
    echo Indiquer le choix (q pour quitter)
    echo.
    echo 0. Choix 0
    echo 1. Choix 1
    
    choice /n /c:01q > nul
    
    if errorlevel 3 goto :exit
    if errorlevel 2 (
        echo choix 1
        goto :choix
        )
    if errorlevel 1 (
        echo choix 0
        goto :choix
        )
    
    :exit

    Edit> Sinon pour ton code, remplace ton test par celui-la :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if "%choix%"=="" goto MenuDefaut
    et ajoute un setlocal

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 72
    Points : 52
    Points
    52
    Par défaut
    Oui Choice me parait plus indiqué pour faire un menu.

    Mais je dois pouvoir lancer mon batch sur une machine vierge, donc meme si je telecharge la cmd choice, la nouvelle machine ne saura pas quoi en faire, non?

  4. #4
    Membre émérite Avatar de Drizzt [Drone38]
    Homme Profil pro
    Directeur de projet
    Inscrit en
    Mai 2004
    Messages
    1 001
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur de projet

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 001
    Points : 2 453
    Points
    2 453
    Par défaut
    Cf mon edit ci-dessus pour ton code.

    Pour choice il te suffit de le livrer avec ton cmd.

  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
    mais ca sou ton set /p:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if !%choix%==! goto début

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 72
    Points : 52
    Points
    52
    Par défaut
    Merci Drizzt et koKoTis,

    vos 2 méthodes fonctionnent très bien.
    D'un point de vu "puriste" faut-il préférer une méthode à l'autre ou est ce strictement la même chose?

    En tout cas ça fonctionne!!

  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
    C'est pareil

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 72
    Points : 52
    Points
    52
    Par défaut
    Ok merci!!! je vais pouvoir tester mon ghost!

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

Discussions similaires

  1. Problemes de quotes entre 2 versions
    Par Batmat01 dans le forum Requêtes
    Réponses: 4
    Dernier message: 14/06/2006, 15h03
  2. sql dynamic : passage de parametre entre quotes
    Par de LANFRANCHI dans le forum SQL
    Réponses: 12
    Dernier message: 26/05/2004, 15h09

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