unhash [ -adfms ] name ...
       Remove the element named name from an internal hash table.  The
       default is remove elements from the command hash table.  The -a
       option causes unhash to remove regular or global aliases; note
       when removing a global aliases that the argument must be quoted to
       prevent it from being expanded before being passed to the command.
       The -s option causes unhash to remove suffix aliases.  The -f
       option causes unhash to remove shell functions.  The -d options
       causes unhash to remove named directories.  If the -m flag is
       given the arguments are taken as patterns (should be quoted) and
       all elements of the corresponding hash table with matching names
       will be removed.

unalias [ -ams ] name ...
       Removes aliases.  This command works the same as unhash -a, except
       that the -a option removes all regular or global aliases, or with
       -s all suffix aliases: in this case no name arguments may appear.
       The options -m (remove by pattern) and -s without -a (remove
       listed suffix aliases) behave as for unhash -a.  Note that the
       meaning of -a is different between unalias and unhash.

unfunction
       Same as unhash -f.
