Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Jun 2010 13:12:58 -0500 (CDT)
From:      Robert Bonomi <bonomi@mail.r-bonomi.com>
To:        aiza21@comclark.com, questions@freebsd.org
Subject:   Re: .sh & getopts
Message-ID:  <201006041812.o54ICwto011675@mail.r-bonomi.com>

next in thread | raw e-mail | index | archive | help

m
> From owner-freebsd-questions@freebsd.org  Thu Jun  3 23:36:28 2010
> Date: Fri, 04 Jun 2010 12:35:56 +0800
> From: Aiza <aiza21@comclark.com>
> To: "questions@freebsd.org" <questions@freebsd.org>
> Cc: 
> Subject: .sh & getopts
>
> Have this code
>
> shift; while getopts :ugr: arg; do case ${arg} in
>     u) action="freebsd-update";;
>     g) action="freebsd-upgrade";;
>     r) action="freebsd-rollback";;
>     ?) exerr ${cmd_usage};;
> esac; done; shift $(( ${OPTION} -1 ))
>
>
> Command being executed looks like this, cmd action -flags aaaa bbbb
>
> Only a single -flag in allowed on the command.
>
> $# gives a count of parms ie: aaaa bbbb. in this example a count of 2.
>
> I am looking for something to check that holds the number of flags on 
> the command. so I can code. if flag_count gt 1 = error
>
> Is there such a thing created by getopts?

Why bother??

 flag_count=0
 shift; while getopts :ugr: arg
   if flag_count = 1; then
     exerr ${cmd_usage}
   fi 
   flag_count=1;
   do case ${arg} in
   {{blah-blah}}




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006041812.o54ICwto011675>