Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

hs: petite question script bash

2 réponses
Avatar
Jérémy PREGO
bonjour,

est-ce qu'il exite un moyen simple en bash d'ex=C3=A9cuter une partie d'u=
n=20
script en fonction du param=C3=A8tre $1 et si il y a pas de param=C3=A8tr=
e,=20
ex=C3=A9cuter tout le script ?

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

je suis convaincu qu'il y a plus propre que =C3=A7a, avec un syst=C3=A8me=
que je=20
ne connais pas encore.

merci pour l'aide apport=C3=A9e

jerem

2 réponses

Avatar
raphael.poitevin
Jérémy PREGO writes:
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
Avatar
Daniel Caillibaud
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