J'essaie d'écrire un script dans lequel je veux vérifier si l'un des paramètres transmis à un script bash correspond à une chaîne. La façon dont je l'ai configuré en ce moment est
if [ "$3" != "-disCopperBld" -a "$4" != "-disCopperBld" -a "$5" != "-disCopperBld" -a "$6" != "-disCopperBld"]
mais il pourrait y avoir un grand nombre de paramètres, alors je me demandais s'il y avait une meilleure façon de faire cela?
Merci
EDIT: J'ai essayé cette partie de code et appelé le script avec l'option -disableVenusBld, mais il affiche toujours "Démarrage de la construction". Est-ce que je fais quelque chose de mal? Merci d'avance!
while [ $# -ne 0 ]
do
arg="$1"
case "$arg" in
-disableVenusBld)
disableVenusBld=true
;;
-disableCopperBld)
disableCopperBld=true
;;
-disableTest)
disableTest=true
;;
-disableUpdate)
disableUpdate=true
;;
*)
nothing="true"
;;
esac
shift
done
if [ "$disableVenusBld" != true ]; then
echo "Starting build"
fi
#! /bin/sh -
en haut de ce que vous avez inclus ici, rendu le script exécutable, puis ./t.sh
imprimé "Démarrage de la construction", mais ./t.sh -disableVenusBld
n'imprime rien.