Shell

A shell is Article description::a command-line interpreter that offers a text-based interface to users. It can be used as a command-line interface with either a virtual console or a terminal emulator; as a remote shell, over ssh for example; or as a script interpreter running in the background.

Typically the shell is the first program started after a user logs in at a terminal. The file contains information defining the login shell for each user on the system. After login, a user can launch other shells from a terminal or use a specific shell with certain terminal emulators.

The file is generally a symlink to the default system shell and as such can represent one of several different POSIX shells.

When writing scripts, care should be taken to reference the correct shell - with a shebang on the firt line. A script beginning with  should only use POSIX constructs and no bash specific code, for example.

Available software
For more shell options see the output of the following command (eix required):

Changing the default system shell
System administrators can change the default system shell using the utility. This utility changes the system shell by replacing with a symlink to a different POSIX compatible shell.

If it is not already installed, emerge the package:

To list possible shell options use:

To set as the default system shell:

Changing a user's shell
The default shell (aka login shell) for users can be changed on an individual basis using the command. To change the login shell for the current user, type and enter a correct path to the new shell. In the example below, a user named is changing his login shell from  to :

can be used by the super user account to change the login shell for any user.