Problème batchfile

Résolu
Bonjour,
je me suis donné l'idée de créer une liste de choses à avoir sur moi donc je fais mon batch mais là ça fait des plombes que je rame à trouver l'erreur

Voici mon code:

@echo off
color 0a
echo appuye sur une touche pour verification de tes affaires
pause >nul
:un
echo as-tu ton porte-monnaie
if "%1"=="oui" goto deux
if "%1"=="non" (
echo prends ton porte-monaie.
goto deux)
:deux
echo as-tu ton htc
if "%1"=="oui" goto trois
if "%1"=="non" (
echo prends ton htc.
goto deux)
:trois
echo as-tu ton nokia
if "%1"=="oui" goto quatre
if "%1"=="non" (
echo prends ton nokia.
goto trois)
:quatre
echo as-tu tes clopes
if "%1"=="oui" goto cinq
if "%1"=="impossible" goto sept
if "%1"=="non" (
echo prends tes clopes.
goto quatre)
:cinq
echo as-tu ton briquet
if "%1"=="oui" goto six
if "%1"=="impossible" goto huit
if "%1"=="non" (
echo prends ton briquet.
goto cinq)

:six
echo C'est bon tu as tout c'est cool maintenant grouille toi d aller prendre le bus.
pause >nul
goto fin

:sept
echo MERDE bon tu en demenderas.
goto six

:huit
echo bon c est pas si grave tu en demenderas un.
goto six

:fin


L'erreur que je vois surtout c'est que ça ne me demande pas d'écrire le paramètre 1

Merci de prendre le temps de m'aider =)

2 réponses

  1. ok c'est dans ton if - else (il te manque une parenthese ==> celle en gras regarde ton else n'est pas terminé...) pareil pour tout tes autres if - else...

    If /I %choix%==oui (
    goto deux
    ) else (
    If /I %choix%==non (
    echo Prend ton porte monnaie !
    goto un
    )
    )

    En revanche cela marche avec la variable "choix" à chaque fois mais on peut changer de variable à chaque fois... La j'en avais mis plusieurs pour bien te faire comprendre l'utilisation des variables...
    Mais visiblement ça va...

    Voili voilou...
    1. salut,

      je comprends pas...
      Tu veux que les questions soient posées au fur et à mesure dans la fenêtre DOS???
      Ou alors tu veux juste passer un parametre au lancement du script?

      je pense que tu veux faire ça:

      @echo off
      color 0a
      echo appuye sur une touche pour verification de tes affaires
      pause >nul
      :un
      echo.
      set /p PORTEMONNAIE=as-tu ton porte-monnaie?
      if "%PORTEMONNAIE%"=="oui" goto deux
      if "%PORTEMONNAIE%"=="non" (
      echo prends ton porte-monaie.
      goto un)
      echo Réponds par "oui" ou par "non".
      goto un
      :deux
      echo.
      set /p HTC=as-tu ton htc?
      if "%HTC%"=="oui" goto trois
      if "%HTC%"=="non" (
      echo prends ton htc.
      goto deux)
      echo Réponds par "oui" ou par "non".
      goto deux
      :trois
      echo.
      set /p NOKIA=as-tu ton nokia?
      if "%NOKIA%"=="oui" goto quatre
      if "%NOKIA%"=="non" (
      echo prends ton nokia.
      goto trois)
      echo Réponds par "oui" ou par "non".
      goto trois
      :quatre
      echo.
      set /p CLOPES=as-tu tes clopes?
      if "%CLOPES%"=="oui" goto cinq
      if "%CLOPES%"=="impossible" goto sept
      if "%CLOPES%"=="non" (
      echo prends tes clopes.
      goto quatre)
      echo Réponds par "oui", par "non" ou par "impossible".
      goto quatre
      :cinq
      echo.
      set /p BRIQUET=as-tu ton briquet?
      if "%BRIQUET%"=="oui" goto six
      if "%BRIQUET%"=="impossible" goto huit
      if "%BRIQUET%"=="non" (
      echo prends ton briquet.
      goto cinq)
      echo Réponds par "oui", par "non" ou par "impossible".
      goto cinq

      :six
      echo.
      echo C'est bon tu as tout c'est cool maintenant grouille toi d aller prendre le bus.
      pause >nul
      exit

      :sept
      echo.
      echo MERDE bon tu en demanderas.
      goto cinq

      :huit
      echo.
      echo bon c est pas si grave tu en demanderas un.
      goto six

      est-ce que ça te correspond??
      1. Donc en gros il faut décider un nom pour chaque lignes ok je vois merci

        moi j'avais essayé de faire ca:

        @echo off
        color 0a
        echo appuye sur une touche pour verification de tes affaires
        pause >nul
        :un
        set /P choix= As-tu ton porte monnaie ?
        If /I %choix%==oui (
        goto deux
        ) else (
        If /I %choix%==non (
        echo Prend ton porte monnaie !
        goto un
        )
        :deux
        set /P choix= As-tu ton HTC ?
        If /I %choix%==oui (
        goto trois
        ) else (
        If /I %choix%==non (
        echo Prend ton HTC !
        goto deux
        )
        :trois
        set /P choix= As-tu ton Nokia ?
        If /I %choix%==oui (
        goto quatre
        ) else (
        If /I %choix%==non (
        echo Prend ton Nokia !
        goto trois
        )
        :quatre
        set /P choix= As-tu tes clopes ?
        If /I %choix%==oui (
        goto cinq
        ) else (
        If /I %choix%==impossible (
        goto sept
        ) else (
        If /I %choix%==non (
        echo Prend tes clopes !
        goto quatre
        )
        :cinq
        set /P choix= As-tu ton briquet ?
        If /I %choix%==oui (
        goto six
        ) else (
        If /I %choix%==impossible (
        goto huit
        ) else (
        If /I %choix%==non (
        echo Prend ton briquet !
        goto cinq
        )
        
        :six
        echo C'est bon tu as tout c'est cool maintenant grouille toi d aller prendre le bus.
        pause >nul
        goto fin
        
        :sept
        echo MERDE bon tu en demenderas.
        goto six
        
        :huit
        echo bon c est pas si grave tu en demenderas un.
        goto six
        
        :fin


        (juste question de comprendre peux-tu m'expliquer pourquoi cela s'arrêtait juste après avoir tapé le premier oui oO ?)