Penguin

InNeedOfRefactor

A shell, also called "the command line", provides the traditional user interface for the Unix operating system and for Unix-like systems. Users direct the operation of the computer by entering command input as text for a shell to execute.

Which Shell am I Using?

  • echo $SHELL

Change A Users Login Shell

Note : A normal user can only change their own login shell, whereas the super user can change the login shell for any user account.

The syntax is :

  • chsh -s /path/to/shell/ [user_account]

So If I am a superuser and I want the login shell for user account 'staz' to be sh then I would type:

  • shsh -s /bin/sh staz

Keep in mind a normal user can only change their login shell to one that is listed in /etc/shells.

/etc/shells

This file contains the full pathname of valid login shells. An Example of its contents is shown below.

/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/usr/bin/screen
/bin/bash
/bin/rbash