xref: /minix/minix/man/man7/environ.7 (revision 83133719)
Copyright (c) 1983 Regents of the University of California.
All rights reserved. The Berkeley software License Agreement
specifies the terms and conditions for redistribution.

@(#)environ.7 6.1 (Berkeley) 5/20/85

ENVIRON 7 "May 20, 1985"
C 5
NAME
environ - user environment
SYNOPSIS
"extern char *const *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:

"\w'TERMCAP 'u" PATH The sequence of directory prefixes that sh , time , nice (1), etc., apply in searching for a file known by an incomplete path name. The prefixes are separated by `:'. Login shells set PATH=:/bin:/usr/bin . Note that the empty space between the `=' and the `:' indicates the current directory. Security aware people move the extra `:' to the end of their path or omit it.

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

TERM The kind of terminal for which output is to be prepared. This information is used by programs that wish to exploit special terminal capabilities, a screen oriented text editor for instance. The terminal type is set by login (1) from the tty database ttytab (5).

SHELL The file name of the users login shell, set by login (1) from the password file passwd (5).

TERMCAP The string describing the terminal in TERM, or the name of the termcap file, see termcap (5), termcap (3).

EXINIT A startup list of commands read by elvis (1).

USER The login name of the user, set by login (1) from the password file passwd (5).

LOGNAME Set to the same value as USER . BSD derived systems have USER , System V has LOGNAME , so modern systems have both to avoid problems.

Further names may be placed in the environment by the export command and ` name = value ' arguments in sh (1). Arguments may also be placed in their environment by programs if they use putenv (3). Or in the environment of another program by building a new environment for one of the exec functions that accepts an environment list, like execle (2) or execve (2). It is unwise to conflict with certain sh (1) variables that are frequently set and/or exported by `.profile' files: MAIL , PS1 , PS2 , IFS .

SEE ALSO
elvis (1), login (1), sh (1), execl (3), execve (2), system (3), termcap (3), termcap (5), passwd (5), ttytab (5).