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 unset.
       Note that this cannot be used when unsetting associative array  ele-
       ments, as the subscript will be treated as part of the pattern.

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

       unset -f is equivalent to unfunction.
