Parsování argumentů s getopts

rob

Parsování argumentů s getopts
« kdy: 21. 05. 2012, 16:42:00 »
Potreboval bych poradit ohledne parsovani argumentu pomoci getopts
Mam 4 argumenty pro skript, vsechny jsou nepovinne.
argumenty a a b jsou samostatne
b a c vyzaduji dalsi parametr
Ale bohuzel to nefunguje jak ma:
Kód: [Vybrat]
sysop@debi:~$ ./test.sh -ac

option a
c
Option -c requires an argument.
sysop@debi:~$ ./test.sh -ca
a
c argument a
sysop@debi:~$
Tady je test.sh
Kód: [Vybrat]
while getopts :abc:d: opt; do
echo $OPTARG
  case $opt in
    a)
      echo "option a"
    ;;
    b)
      echo "option b"
    ;;
    c)
      echo "c argument $OPTARG"
    ;;
    d)
      echo "d argument $OPTARG"
    ;;
    \?)
      echo "Neznamy aurgument"
      exit 1
    ;;
        :)
    echo "Option -$OPTARG requires an argument."
    exit 1
    ;;
  esac
done
Muze mi nekdo poradit jak na to ?
Nebo pouzit neco jineho ( tohle je jen ukazkovy priklad argumentu mam mnohem vice)
Diky
« Poslední změna: 22. 05. 2012, 11:43:20 od Petr Krčmář »


Kit