programming, operating system
that is bound in the current environment. When evaluating an expression in some environment, the evaluation of a variable consists of looking up its name in the environment and substituting its value.
Most programming languages have some concept of an environment but in Unix
shell scripts it has a specific meaning slightly different from other contexts. In shell scripts, environment variables are one kind of shell variable
. They differ from local variables and command line arguments in that they are inheritted by a child process
. Examples are the PATH variable that tells the shell the file system paths
to search to find command executables and the TZ variable which contains the local time zone. The variable called "SHELL" specifies the type of shell being used.
These variables are used by commands or shell scripts to discover things about the environment they are operating in. Environment variables can be changed or created by the user
or a program.
To see a list of environment variables type "setenv" at the csh
or tcsh prompt
or "set" at the sh
, jsh or ksh
In other programming languages, e.g. functional programming
languages, the environment is extended with new bindings when a function
are bound to its actual arguments or when new variables are declared. In a block-structured procedural
language, the environment usually consists of a linked list
of activation records.