unset [ -fmv ] name ...
       Each named parameter is unset.  Local parameters remain local  even
       if  unset;  they  appear unset within scope, but the previous value
       will still reappear when the scope ends.

       Individual elements of associative array parameters may be unset by
       using subscript syntax on name, which should be quoted (or the  en-
       tire  command  prefixed  with noglob) to protect the subscript from
       filename generation.

       If the -m flag is specified the arguments  are  taken  as  patterns
       (should  be  quoted) and all parameters with matching names are un-
       set.  Note that this cannot be used when unsetting associative  ar-
       ray  elements, as the subscript will be treated as part of the pat-
       tern.

       The -v flag specifies that name refers to parameters. This  is  the
       default behaviour.

       unset -f is equivalent to unfunction.
