*chsh* is used to change your login shell. If a shell is not given on the command line, *chsh* prompts for one.
*chsh* supports non-local entries (kerberos, LDAP, etc.) if linked with libuser, otherwise use *ypchsh*(1), *lchsh*(1) or any other implementation for non-local entries.
*chsh* will accept the full pathname of any executable file on the system.
The default behavior for non-root users is to accept only shells listed in the _/etc/shells_ file, and issue a warning for root user. It can also be configured at compile-time to only issue a warning for all users.
== EXIT STATUS
Returns 0 if operation was successful, 1 if operation failed or command syntax was not valid.