Script shell affiche le nombre de jours d'un mois d'une année
amdnibrass
Messages postés
25
Statut
Membre
-
amdnibrass Messages postés 25 Statut Membre -
amdnibrass Messages postés 25 Statut Membre -
Bonjour,
j'ai ecrit ce script et lorsque je fait l'execution en tapant sur le terminal ./jour $1 $2 (jour le nom du progrmme) il m'affiche ces erreurs :
./jour : ligne 12 : erreur de synthaxe prés de symbole inattendu <<else>>
./jour : ligne 12 : 'else'
quelqu'un m'aider svp :)
j'ai ecrit ce script et lorsque je fait l'execution en tapant sur le terminal ./jour $1 $2 (jour le nom du progrmme) il m'affiche ces erreurs :
./jour : ligne 12 : erreur de synthaxe prés de symbole inattendu <<else>>
./jour : ligne 12 : 'else'
quelqu'un m'aider svp :)
1 réponse
-
Salut,
j'ai ecrit ce script
Et il est où ???
Sans le voir difficile de t'aider ;-(
-
-
-
#script jour if ( test $1 -lt 1 -o $1 -gt 12 ) then echo erreur fi if ( test $1 -eq 1 -o $1 -eq 3 -o $1 -eq 5 -o $1 -eq 7 -o $1 -eq 8 -o $1 -eq 10 -o $1 -eq 12 ) then echo 31 else if ( test $1 -eq 2 -a 'expr $2 % 400' -eq 0 -o \( 'expr $2 % 4' -eq 0 -a 'expr $2 % 100' -ne 0 \) ) then echo 29 else echo 28 fi else echo 30 fi -
Effectivement, la syntaxe
if ... then ... else
avec plusieurs conditions après lethen
s'écrit avecelif
et non avecelse if...
;-\
Essaye de récrire ton script en t'inspirant de la syntaxe suivante :if <condition>
then
<traitement>
elif <condition>
then
<traitement>
elif <condition>
then
<traitement>
etc.
else
<traitement>
fi
Tant qu'on y est, mettre un shebang (#!/bin/bash) en début de script est une bonne habitude à prendre ;-) -
-