July 5, 2005 ENVIRON 7

### NAME

environ - user process environment

### SYNOPSIS

extern char **environ;

### DESCRIPTION

An array of strings called the environment is made available by execve(2) when a process begins. By convention these strings have the form ``name=value''. The following names are used by various commands:

```AUDIOCTLDEVICE`
  The name of the audio control device to be used by audioctl(1), audioplay(1) and audiorecord(1).

```AUDIODEVICE`
  The name of the audio device to be used by audioplay(1) and audiorecord(1).

```BLOCKSIZE`
  The size of the block units used by several commands, most notably df(1), du(1) and ls(1). ```BLOCKSIZE` may be specified in units of a byte by specifying a number, in units of a kilobyte by specifying a number followed by ``K'' or ``k'', in units of a megabyte by specifying a number followed by ``M'' or ``m'' and in units of a gigabyte by specifying a number followed by ``G'' or ``g''. Sizes less than 512 bytes or greater than a gigabyte are ignored.

```EXINIT`
  A startup list of commands read by ex(1) and vi(1).

```HOME`
  A user's login directory, set by login(1) from the password file passwd(5).

```LANG`
  Default for all NLS categories. Only used if ```LC_ALL` or the environment variable for a particular NLS category is not provided ``(`LC_COLLATE`, ```LC_CTYPE`, ```LC_MESSAGES`, ```LC_MONETARY`, ```LC_NUMERIC`, or ```LC_TIME`).

```LC_ALL`
  Override for all NLS categories. If set, overrides the values of ```LC_COLLATE`, ```LC_CTYPE`, ```LC_MESSAGES`, ```LC_MONETARY`, ```LC_NUMERIC`, and ```LC_TIME`.

```LC_COLLATE`
  NLS string-collation order information.

```LC_CTYPE`
  NLS character classification, case conversion, and other character attributes.

```LC_MESSAGES`
  NLS format for affirmative and negative responses.

```LC_MONETARY`
  NLS rules and symbols for formatting monetary numeric information.

```LC_NUMERIC`
  NLS rules and symbols for formatting nonmonetary numeric information.

```LC_TIME`
  NLS rules and symbols for formatting time and date information.

```LIBC_DIAGASSERT`
  Control how the _DIAGASSERT(``) macro (from <```assert.h`>) behaves once the assertion is raised. Refer to _DIAGASSERT(3) for more information.

```LOGNAME`
  The login name of the user.

```MALLOC_OPTIONS`
  Control the behaviour of the malloc(``) function. Refer to malloc(3) for more information.

```MIXERDEVICE`
  The name of the audio mixer device to be used by mixerctl(1).

```PAGER`
  The program used for paginating the output of several commands such as man(1). If null or not set, the standard pagination program more(1) will be used.

```PATH`
  The sequence of directories, separated by colons, searched by csh(1), sh(1), system(3), execvp(3), etc, when looking for an executable file. PATH is set to ``/usr/bin:/bin:/usr/pkg/bin:/usr/local/bin'' initially by login(1).

```PRINTER`
  The name of the default printer to be used by lpr(1), lpq(1), and lprm(1).

```RCMD_CMD`
  When using the rcmd(3) function, this variable is used as the program to run instead of rcmd(1).

```SHELL`
  The full pathname of the user's login shell.

```TERM`
  The kind of terminal for which output is to be prepared. This information is used by commands, such as nroff(1) which may exploit special terminal capabilities. See ```/usr/share/misc/termcap` (termcap(5)) for a list of terminal types.

```TERMCAP`
  The string describing the terminal in TERM, or, if it begins with a '/', the name of the termcap file. See ```TERMPATH` below, termcap(5), and termcap(3).

```TERMPATH`
  A sequence of pathnames of termcap files, separated by colons or spaces, which are searched for terminal descriptions in the order listed. Having no ```TERMPATH` is equivalent to a ```TERMPATH` of `````$HOME/.termcap:/usr/share/misc/termcap`''. ```TERMPATH` is ignored if ```TERMCAP` contains a full pathname.

```TIMEFORMAT`
  A strftime(3) format string that may be used by programs such as dump(8) for formatting timestamps.

```TMPDIR`
  The directory in which to store temporary files. Most applications use either ```/tmp` or ```/var/tmp`. Setting this variable will make them use another directory.

```TZ`
  The timezone to use when displaying dates. The normal format is a pathname relative to ```/usr/share/zoneinfo`. For example, the command env TZ=US/Pacific date displays the current time in California. See tzset(3) for more information.

```USER`
  The login name of the user. It is recommended that portable applications use ```LOGNAME` instead.

Further names may be placed in the environment by the export command and name=value arguments in sh(1), or by the setenv command if you use csh(1). It is unwise to change certain sh(1) variables that are frequently exported by ```.profile` files, such as ```MAIL`, ```PS1`, ```PS2`, and ```IFS`, unless you know what you are doing.

### SEE ALSO

audioctl(1), audioplay(1), audiorecord(1), csh(1), ex(1), login(1), man(1), more(1), sh(1), execve(2), _DIAGASSERT(3), execle(3), malloc(3), rcmd(3), system(3), termcap(3), audio(4), termcap(5), nls(7), dump(8)

### HISTORY

The environ manual page appeared in 4.2BSD.