bash arguments de ligne de commande en remplaçant les valeurs par défaut pour les variables

J'ai un script qui a plusieurs fichiers d'entrée, généralement ce sont les valeurs par défaut stockés dans un endroit standard et appelé par le script.

Cependant il est parfois nécessaire de le faire fonctionner avec des entrées changées.

Dans le script j'ai actuellement 3 variables $A, $B et $C, maintenant, je veux le faire fonctionner avec un défaut non $B, demain je peux avoir envie de le faire fonctionner avec un non par défaut de $A et $B.

J'ai eu un coup d'oeil autour de la façon d'analyser les arguments de ligne de commande:
Comment dois-je analyser les arguments de ligne de commande de Bash?

Mais je ne suis pas sûr de la façon de traiter avec le fait d'avoir un jeu en ligne de commande aruguments de temps en temps?

Je n'ai pas assez de rep pour répondre à ma propre question cependant, j'ai une solution:

https://stackoverflow.com/a/4610469/2339623

#!/bin/bash
a=input1
b=input2
c=input3
while getopts  "a:b:c:" flag
do
    case $flag in
        a) a=$OPTARG;;
        b) b=$OPTARG;;
        c) c=$OPTARG;;
    esac
done

Excuses évidemment je n'ai pas de recherche de manière aussi approfondie que je pensais...

Vous pouvez utiliser getopts à cette fin. Il existe de nombreux tutoriels, quelque chose comme aplawrence.com/Unix/getopts.html peut être utile pour commencer.
Merci, j'ai vu cela sur les questions que j'ai lié. Je me demandais si il y a des façon d'avoir des arguments de la commande remplacer les variables. Par exemple lors de la définition des fonctions en python, il est possible de définir une valeur par défaut. Je peux voir qu'avec un si je pouvais remplacer la valeur par défaut avec l'argument de ligne de commande, mais n'était pas certain s'il y a un niveau moyen de faire cela?

OriginalL'auteur Lanrest | 2013-05-01