hs: petite question script bash

Le
Jérémy PREGO
bonjour,

est-ce qu'il exite un moyen simple en bash d'exécuter une partie d'u=
n
script en fonction du paramètre $1 et si il y a pas de paramètr=
e,
exécuter tout le script ?

j'ai bien pensé faire des fonctions et faire une condition genre:
if [ $1 == "contenue de $1" ]; then
fonction1
fi

je suis convaincu qu'il y a plus propre que ça, avec un système=
que je
ne connais pas encore.

merci pour l'aide apportée

jerem
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
raphael.poitevin
Le #26468693
Jérémy PREGO
merci pour ça, mais du coup dans le *, je vais devoir mettre mes tro is
fonction l'une après l'autre, pour qu'elles soient exécuté s, si je
n'entre aucun paramètre.
si c'est un moyen propre, je vais l'adopter :)

Pour moi c’est propre !
--
Raphaël
Daniel Caillibaud
Le #26469519
Le 21/03/18 à 20:40, (Raphaël POITEVIN ) a écrit :
RP> Pour moi c’est propre !
J'ajouterais quand même un
# devrait se trouver au début de tout script bash, pour planter si on
# utilise une variable non déclarée
set -u
et du coup plus loin, un ${1-} pour initialiser la variable "1" à "" si
elle n'existe pas (${foo-bar} vaut $foo si la variable existe,
indépendamment de sa valeur, et "bar" sinon)
case ${1-}
foo)
# du code pour $1 == "foo"
;;
bar|"bla bla")
# du code pour $1 == "bar" ou $1 == "bla bla"
;;
*)
# du code pour tous les autres cas
;;
esac
--
Daniel
S'il est impossible de ne pas penser à quelque chose, il
reste encore possible de penser à autre chose.
Lewis Carroll
Publicité
Poster une réponse
Anonyme