Come ottenere argomenti con bandiere in bash

Come ottenere argomenti con bandiere in bash
Bash è una shell e un linguaggio di comando ampiamente utilizzato utilizzato nei sistemi UNIX e Linux. Fornisce vari modi per passare gli argomenti agli script di shell, incluso l'uso di bandiere per superare gli argomenti opzionali, questo articolo, discuterà di come ottenere argomenti con bandiere in bash.

Ottenere argomenti con bandiere in bash

Per ottenere argomenti con bandiere in bash, puoi usare il comando "getopts". Il comando "getopts" è una funzione integrata in bash che può essere utilizzata per analizzare le opzioni e gli argomenti della riga di comando. Prende Tre argomenti: la stringa di opzione, la variabile per archiviare l'opzione corrente, e il nome della variabile per archiviare gli argomenti rimanenti. Ecco un esempio:

#!/Bin/Bash
mentre gettopts ": x: y:" opt; Fare
Caso $ opt in
X)
arg1 = "$ optarg"
;;
y)
arg2 = "$ optarg"
;;
\?)
echo "non valido: -$ optarg"> & 2
;;
:)
Opzione Echo " -$ optarg richiede un argomento."> & 2
;;
Esac
Fatto
Shift $ ((optind-1))
Echo "Argomento 1: $ arg1"
Echo "Argomento 2: $ arg2"

Qui il comando "getopts" viene utilizzato per analizzare le opzioni di riga di comando "-x" e "-y". Il carattere ":" dopo ogni opzione indica che l'opzione richiede un argomento e la variabile "opt" memorizza l'opzione corrente e le variabili "arg1" e "arg2" memorizzano gli argomenti corrispondenti.

L'istruzione "Case" viene utilizzata per gestire ogni opzione, quindi se l'opzione è "X", l'argomento viene archiviato in "Arg1". Se l'opzione è "y", l'argomento è archiviato in "arg2".Viene visualizzato un messaggio di errore quando viene fornita un'opzione non valida, nonché quando non viene fornita alcun argomento anche se un'opzione richiede una.

Optarg viene utilizzato per archiviare il valore dell'argomento che viene approvato con le opzioni -x o -y, mentre Optind -1 viene utilizzato per spostare i parametri posizionali per escludere le opzioni e i loro argomenti, lasciando solo gli argomenti di non opzione.

Dopo aver analizzato le opzioni, il comando "Shift" viene utilizzato per rimuovere le opzioni dall'elenco degli argomenti. Ciò garantisce che gli argomenti rimanenti siano archiviati nella variabile corretta.Per utilizzare lo script con le flag, è possibile eseguire lo script con le opzioni e gli argomenti del flag, come questo:

./ - -

Conclusione

L'uso di flag per passare gli argomenti opzionali per colpire gli script può rendere gli script più flessibili e potenti e con il comando "getopts", è possibile analizzare facilmente argomenti e opzioni di riga di comando. Seguendo l'esempio in questo articolo, puoi implementare flag nei tuoi script bash e gestirli con facilità.