NAME

     environ - user environment


SYNOPSIS

     extern char *const *environ;


DESCRIPTION

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

     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 ter-
             minal 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  fre-
          quently 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).