GNU/Linux >> Tutoriels Linux >  >> Linux

Comment gérer les commutateurs dans un script shell ?

Existe-t-il des outils intégrés qui reconnaîtront -x et --xxxx en tant que commutateurs et non en tant qu'arguments, ou devez-vous parcourir toutes les variables d'entrée, tester les tirets, puis analyser les arguments par la suite ?

Réponse acceptée :

Utilisez getopts .

Il est assez portable comme dans la spécification POSIX. Malheureusement, il ne prend pas en charge les options longues.

Si vous n'avez besoin que d'options courtes, modèle d'utilisation typique pour getopts (en utilisant le rapport d'erreurs non silencieux) est :

# process arguments "$1", "$2", ... (i.e. "[email protected]")
while getopts "ab:" opt; do
    case $opt in
    a) aflag=true ;; # Handle -a
    b) barg=$OPTARG ;; # Handle -b argument
    ?) ;; # Handle error: unknown option or missing required argument.
    esac
done

Linux
  1. Comment créer un fichier temporaire en script shell ?

  2. Comment appeler un autre script shell comme un sous-programme ?

  3. Que sont les scripts shell ? Comment créer des scripts shell ?

  4. Comment exécutez-vous un script lors de la connexion dans * nix ?

  5. Comment gérer plus de 10 paramètres dans le shell

Comment écrire un script shell dans Ubuntu

Comment stocker une commande Linux en tant que variable dans un script shell

Comment exécuter un script Shell en tant que service SystemD sous Linux

Comment exécuter une commande dans un script shell ?

Comment lire les arguments de ligne de commande dans les scripts shell ?

Comment créer et exécuter un script shell dans Ubuntu 22.04