Where is the environment variable $SHELL
first set on a UNIX system?
How can I find and print all of this type of default settings of my terminal?
Where is the environment variable $SHELL
first set on a UNIX system?
How can I find and print all of this type of default settings of my terminal?
Traditionally, by login(1):
ENVIRONMENT
login sets the following environment variables:
HOME The user's home directory, as specified by the password
database.
SHELL The user's shell, as specified by the password database.
Though these days it might be a window manager or terminal program making those settings, depending on the flavor of unix and how far they've departed from tradition. env
will show what's currently set in the environment, which a shell or something else may have altered from the default. However, "terminal settings" are not typically environment variables, and shells like bash
or zsh
have a set
command, and other places they hide settings...
You can check the default values of your system in /etc/default/useradd
or with sudo useradd -D
, this will output the default value for $SHELL
and other variables.