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 :

Apprentissage PS : soucis dans "Quizz" [PowerShell]


Sujet :

Scripts/Batch

  1. #1
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2011
    Messages : 159
    Par défaut Apprentissage PS : soucis dans "Quizz"
    Bonjour à tous,

    Etant en plein apprentissage du PowerShell, j'ai essayé de faire un script "Quizz" en se langage. Pour ce faire, un fichier CSV est appelé, contenant les questions et les réponses :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Question                                                        reponse                                                        
    --------                                                        -------                                                        
    Quelle est la capitale de la France ?                           Paris                                                          
    Quelle est la capitale de la Belgique ?                         Bruxelles
    Voici le script en lui-même :

    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
    $quizz = Import-Csv "C:\Users\Antoine\Desktop\Dropbox\Scripting\list.csv"
    
    foreach ($ligne in $quizz)
    {
        write-host $ligne.Question
        $choix = Read-Host "Votre réponse ?"
        
        if ($choix = $ligne.reponse)
        {
            Write-Host "Exact !"
        }
        
        else
        {
            Write-Host "Perdu !"
        }
    }
    Le soucis, est que quelle que soit la réponse que l'on met, il indique "Exact".

    Je ne sais pas d'où vient, l'erreur. J'ai essayé pas mal de trucs, mais en vain. Peut-être un soucis au niveau de la structure du CSV ?

    Merci d'avance pour votre aide, cela me sera certainement précieux dans mon apprentissage.

    Bàv,

  2. #2
    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,

    en Powershell l'opérateur '=' est un opérateur d'assignation, il faut le changer par un '-eq'
    pour plus de détails sur les opérateurs, tu peux consulter le man:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PS II> help opera -Category helpFile
    ton instruction IF retourne toujours "Exact" parcequ'elle est toujours vrai: en powershell les instructions conditionnelles sont vrais s'ils retournent TRUE ou bien s'ils ne sont pas vides.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Novembre 2011
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2011
    Messages : 159
    Par défaut
    OK, super. Ca marche nickel maintenant. J'ai consulté la page d'aide et j'ai bien compris maintenant.

    Encore merci ;-)

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

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