- Why are flags often used as modifiers whereas positional parameters are used as targets?
- Why do we run getopts in a while loop?
- Why do we need ?) in the case statement?
- Why do we (sometimes) need :) in the case statement?
- Why do we need a separate optstring if we're resolving all options anyway?
- Why do we need to subtract 1 from the OPTIND variable when we use it in shift?
- Is it a good idea to mix options with positional arguments?