A variable 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 Unixshell 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 systempaths 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 tcshprompt or "set" at the sh, bash, jsh or ksh prompt. In other programming languages, e.g. functional programming languages, the environment is extended with new bindings when a function' s parameters are bound to its {actual arguments} or when new variables are declared. In a block-structuredprocedural language, the environment usually consists of a linked list of activation records. (1999-01-26)