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

Linux Discussion :

test "if then else" dans un script shell qui a quelque problèmes à l'execution ?


Sujet :

Linux

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 49
    Points : 50
    Points
    50
    Par défaut test "if then else" dans un script shell qui a quelque problèmes à l'execution ?
    Bonjour,

    Voilà j'ai en fait 2 teste if imbriqués l'un dans l'autre... bref, tout ce qu'il y a de plus classique, pourtant voilà ce que me répond le shell lorsque je veux lancer mon script:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ./mon script.sh: line 79: syntax error near unexpected token `else'
    ./mon script.sh: line 79: ` else'
    La structure est celle-ci:

    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
     
    if [test]
      then
      action1
      action2
      if [test2.1]
        then
        action
        action
      else if [test2.2]
         then
         action
         ....
      fi
    else           <-------- problème ici ! pouqruoi ???
      action
      if [test2.1]
         action
      else if [test2.2]
         action
         etc...
      fi
    fi
    voilà, je ne comprend pas vraiment pourquoi mon else ne passe pas... alors que je n'ai fermé que le test if à l'intérieur du premier test...

    Une idée quelconque pour m'aider ?

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 49
    Points : 50
    Points
    50
    Par défaut
    Ok, j'ai trouvé la solution tout seul comme un grand !

    et je me sens un peu stupide du coup...

    en shell c'est pas else if mais elif la synthaxe !

  3. #3
    Modérateur
    Avatar de paissad
    Homme Profil pro
    Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Inscrit en
    Avril 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 043
    Points : 2 560
    Points
    2 560
    Par défaut
    Bonjour,
    c'est bien d'avoir trouvé tout seul comme un grand. Maintenant, penses à cliquer sur le bouton RESOLU pour signifier que ton problème a été réglé
    Cordialement,
    Nous n'héritons pas de la terre de nos parents, nous l'empruntons à nos enfants.
    Le chat du site est aussi ici pour aider. Ne pas hésiter à visiter !

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    c'est pas else if mais elif la synthaxe
    ça pourrait...si il n'y a pas d'autre cas à prendre en compte pour la condition initiale, mais qu'il existe des "sous-conditions" dans le cas contraire.
    indenter rigoureusement son code, aide à voir où/quand ça dérape.
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

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

Discussions similaires

  1. Un kill dans un script shell qui arrête le script
    Par woodruff28 dans le forum Linux
    Réponses: 4
    Dernier message: 04/07/2011, 22h32
  2. Appel d'un programme C dans un script shell
    Par Spacy_green dans le forum Linux
    Réponses: 6
    Dernier message: 01/06/2006, 13h01
  3. Inclure vi dans un script shell
    Par PierrotY dans le forum Linux
    Réponses: 3
    Dernier message: 18/05/2006, 09h28
  4. Programme en C dans un script shell
    Par am.adnane dans le forum Linux
    Réponses: 1
    Dernier message: 05/02/2006, 17h57
  5. Syntaxe dans un script shell
    Par cubepiege dans le forum Linux
    Réponses: 5
    Dernier message: 27/09/2005, 16h21

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