Parse option arguments. Getopts is used by shell procedures to parse positional parameters as options. OPTSTRING contains the option letters to be recognized; if a letter is followed by a colon, the option is expected to have an argument, which should be separated from it by white space. Each time it is invoked, getopts will place the next option in the shell variable $name, initializing name if it does not exist, and the index of the next argument to be processed into the shell variable OPTIND. OPTIND is initialized to 1 each time the shell or a shell script is invoked. When an option requires an argument, getopts places that argument into the shell variable OPTARG. getopts reports errors in one of two ways. If the first character of OPTSTRING is a colon, getopts uses silent error reporting. In this mode, no error messages are printed. If an invalid option is seen, getopts places the option character found into OPTARG. If a required argument is not found, getopts places a ':' into NAME and sets OPTARG to the option character found. If getopts is not in silent mode, and an invalid option is seen, getopts places '?' into NAME and unsets OPTARG. If a required argument is not found, a '?' is placed in NAME, OPTARG is unset, and a diagnostic message is printed. If the shell variable OPTERR has the value 0, getopts disables the printing of error messages, even if the first character of OPTSTRING is not a colon. OPTERR has the value 1 by default. Getopts normally parses the positional parameters ($0 - $9), but if more arguments are given, they are parsed instead. Exit Status: Returns success if an option is found; fails if the end of options is encountered or an error occurs.
Analizu opciajn argumentojn La funkcion „getopts‟ uzas ŝelproceduroj por analizi opciformajn numerparametrojn. La argumento OPCIĈENO entenas la rekonendajn opciliterojn; se literon sekvas dupunkto, la opcio postulas argumenton, disde ĝi apartigendan per blanka spaco. Ĉe ĉiu voko „getopts‟ liveros la vican opcion en la ŝelvariablon $NOMO (estigante la variablon se ĝi ne ekzistas); kaj la indicon de la sekve traktota argumento en la ŝelvariablon OPTIND. OPTIND ricevas la komencan valoron 1 ĉe ĉiu voko de la ŝelo aŭ ŝela skripto. Kiam opcio bezonas argumenton, „getopts‟ liveras tiun argumenton en la ŝelvariablon OPTARG. La funkcio „getopts‟ raportas pri eraroj dumaniere. Se la unua signo de OPCIĈENO estas dupunkto, „getopts‟ prisilentas erarojn. En tiu reĝimo, nenia erarmesaĝo estas eligata. Renkontinte misan opcion, „getopts‟ metas la trovitan opciliteron en OPTARG. Se mankas bezonata argumento, la ŝelvariablo NOMO ricevas la valoron ':', kaj la variablo OPTARG, la trovitan opcion. Se „getopts‟ ne estas en silenta reĝimo kaj trovas misan opcion, tiam NOMO ricevas la valoron '?' kaj OPTARG senvaloriĝas. Se mankas bezonata opcio, NOMO ricevas la valoron '?', OPTARG senvaloriĝas kaj erarmesaĝo estas eligata. Se la ŝelvariablo OPTERR havas la valoron 0, „getopts‟ malaktivigas la eligon de erarmesaĝoj, eĉ se la unua signo de OPCIĈENO ne estas dupunkto. La apriora valoro de OPTERR estas 1. Normale „getopts‟ analizas la numerparametrojn ($0 - $9), sed se estas pli da argumentoj, „getopts‟ anstataŭe analizas ilin. Elirstato: Sukceso, se opcio estas trovita; malsukceso, se renkontiĝis la fino de la opcioj aŭ okazis eraro.