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 :

Boucle while et plusieurs conditions [Débutant(e)] [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Boucle while et plusieurs conditions
    Bonjour,

    Etant débutant, malgré de longues recherches, je sollicite votre aide, car je bloque sur une boucle qui devrait être simple pour les plus expérimentés d'entre vous.
    Voila, je cherche à faire saisir à un utilisateur lors d'un formulaire uniquement 2 réponses. Je veux que si il sort de ces réponses, la question lui soit reposé en boucle.
    Ettonement, lorsque je tente ma commande en imposant une réponse cela fonctionne. La commande est le suivante:


    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [string]$db = read-host "Saisir la valeur"
    while ( $db -notlike "std1") {$db=Read-Host "Choix incorrect - Saisissez le numéro correspondant à votre choix"}
    >Si je saisis autre chose que std1, la boucle se répète. Si je saisis bien std1, je sors de la boucle




    Là ou ca se corse, c'est quand je veux avoir 2 "notlike":

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [string]$db = read-host "Saisir la valeur"
    while ( $db -ne "std1" -or $db -ne "std2") {$db=Read-Host "Choix incorrect - Saisissez le numéro correspondant à votre choix"}
    >Aucune erreur n'est renvoyé, mais maintenant, si je saisis std1 ou std2 la boucle continue.



    J'espère que quelqu'un prendra le temps de m'expliquer pourquoi et si possible une indication simple sur comment contourner le problème.
    En vous remerciant par avance,

  2. #2
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Salut,
    si tu laisses le choix entre deux valeurs, utilise une construction dédiée.

    Pour le test inverse la condition :
    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    '','std1','std2','std3'| % {Write-Warning "avec: $_";($_ -ne "std1") -or ($_ -ne "std2")}
     
    '','std1','std2','std3'| % {Write-Warning "avec: $_";($_ -eq "std1") -or ($_ -eq "std2")}

  3. #3
    Futur Membre du Club
    Inscrit en
    Mai 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    En fait, j'ai pu corrigé le soucis avec le code suivant:

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $db1="res1","std1","std2""
    while ( $db -notin $db1) {$db=Read-Host "Choix incorrect, ressaisir la valeur"}

    Merci en tout cas pour ton aide, elle me sera surement utilse!

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

Discussions similaires

  1. Boucle while saute une condition
    Par JohnAnto dans le forum C++
    Réponses: 3
    Dernier message: 02/02/2013, 12h52
  2. [Débutant] Boucle if avec plusieurs conditions ?
    Par Imène_23 dans le forum MATLAB
    Réponses: 2
    Dernier message: 22/09/2011, 14h06
  3. [XL-2003] Création de Boucles VBA avec plusieurs Conditions
    Par MatMout dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 16/07/2010, 10h31
  4. Boucle while avec 2 conditions OU
    Par loonis dans le forum Prolog
    Réponses: 4
    Dernier message: 25/05/2009, 22h05
  5. syntaxe boucle if then (plusieurs conditions)
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/04/2008, 14h42

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