Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: rob 21. 05. 2012, 16:42:00

Název: Parsování argumentů s getopts
Přispěvatel: rob 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
Název: Re:parsovani argumentu s getopts
Přispěvatel: Kit 21. 05. 2012, 17:58:01
http://www.abclinuxu.cz/poradna/linux/show/359665#1