Sto cercando di imparare il caso perché stavo scrivendo uno script completamente funzionale.Estratto conto caso Bash
Sto partendo con il sottostante
#!/bin/sh
case [email protected] in
-h|--help)
echo "You have selected Help"
;;
-B|-b)
echo "You have selected B"
;;
-C|-c)
echo "You have selected C"
;;
*)
echo "Valid Choices are A,B,C"
exit 1
;;
esac
Voglio usare due di queste opzioni:
./getopts.sh -h -c
ma ottengo questo risultato scelte validi sono A, B, C
Per favore puoi aiutarmi e farmi sapere cosa sto facendo male?
Voglio creare uno script che faccia qualcosa se si inserisce un'opzione ma si fanno più cose se si inserisce più.
Inoltre, come potrei analizzare $ 1 per questo script come sicuramente quale mai l'opzione che inserisco prima (-h) sarà $ 1 ??
Grazie!
Perché non usare 'getopts' invece di' case'? – fedorqui
Sono aperto a qualsiasi idea in quanto non l'ho ancora usato. Ho bisogno di imparare questo piuttosto che avere 1000 di istruzioni nidificate se – bsmoo
@fedorqui Anche con getopts, uno ha ancora bisogno di un ciclo (di solito un ciclo 'while') e qualche tipo di analisi del caso, e' case' è molto meglio di 'se ... elif ... 'per quello scopo. – Uwe