environ(5)
NAME
environ - user environment
DESCRIPTION
When a process begins execution, one of the exec family of
functions makes available an array of strings called the
environment; see exec(2). By convention, these strings have
the form variable=value, for example, PATH=/sbin:/usr/sbin.
These environmental variables provide a way to make informa-
tion about a program's environment available to programs.
A name may be placed in the environment by the export com-
mand and name=value arguments in sh(1), or by one of the
exec functions. It is unwise to conflict with certain shell
variables such as MAIL, PS1, PS2, and IFS that are fre-
quently exported by .profile files; see profile(4).
The following environmental variables can be used by appli-
cations and are expected to be set in the target run-time
environment.
HOME The name of the user's login directory, set by
login(1) from the password file; see passwd(4).
LANG The string used to specify internationalization infor-
mation that allows users to work with different
national conventions. The setlocale(3C) function
checks the LANG environment variable when it is called
with "" as the locale argument. LANG is used as the
default locale if the corresponding environment vari-
able for a particular category is unset or null. If,
however, LC_ALL is set to a valid, non-empty value,
its contents are used to override both the LANG and
the other LC_* variables. For example, when invoked as
setlocale(LC_CTYPE, ""), setlocale() will query the
LC_CTYPE environment variable first to see if it is
set and non-null. If LC_CTYPE is not set or null, then
setlocale() will check the LANG environment variable
to see if it is set and non-null. If both LANG and
LC_CTYPE are unset or NULL, the default "C" locale
will be used to set the LC_CTYPE category.
Most commands will invoke setlocale(LC_ALL, "") prior
to any other processing. This allows the command to be
used with different national conventions by setting
the appropriate environment variables.
The following environment variables correspond to each
category of setlocale(3C):
LC_ALL
If set to a valid, non-empty string value,
override the values of LANG and all the other
LC_*variables.
LC_COLLATE
This category specifies the character collation
sequence being used. The information
corresponding to this category is stored in a
database created by the localedef(1) command.
This environment variable affects strcoll(3C)
and strxfrm(3C).
LC_CTYPE
This category specifies character classifica-
tion, character conversion, and widths of multi-
byte characters. When LC_CTYPE is set to a valid
value, the calling utility can display and han-
dle text and file names containing valid charac-
ters for that locale; Extended Unix Code (EUC)
characters where any individual character can be
1, 2, or 3 bytes wide; and EUC characters of 1,
2, or 3 column widths. The default "C" locale
corresponds to the 7-bit ASCII character set;
only characters from ISO 8859-1 are valid. The
information corresponding to this category is
stored in a database created by the localedef()
command. This environment variable is used by
ctype(3C), mblen(3C), and many commands, such as
cat(1), ed(1), ls(1), and vi(1).
LC_MESSAGES
This category specifies the language of the mes-
sage database being used. For example, an appli-
cation may have one message database with French
messages, and another database with German mes-
sages. Message databases are created by the
mkmsgs(1) command. This environment variable is
used by exstr(1), gettxt(1), srchtxt(1),
gettxt(3C), and gettext(3C).
LC_MONETARY
This category specifies the monetary symbols and
delimiters used for a particular locale. The
information corresponding to this category is
stored in a database created by the localedef(1)
command. This environment variable is used by
localeconv(3C).
LC_NUMERIC
This category specifies the decimal and
thousands delimiters. The information
corresponding to this category is stored in a
database created by the localedef() command.
The default C locale corresponds to "." as the
decimal delimiter and no thousands delimiter.
This environment variable is used by
localeconv(3C), printf(3C), and strtod(3C).
LC_TIME
This category specifies date and time formats.
The information corresponding to this category
is stored in a database specified in
localedef(). The default C locale corresponds to
U.S. date and time formats. This environment
variable is used by many commands and functions;
for example: at(1), calendar(1), date(1),
strftime(3C), and getdate(3C).
MSGVERB
Controls which standard format message components
fmtmsg selects when messages are displayed to stderr;
see fmtmsg(1) and fmtmsg(3C).
NETPATH
A colon-separated list of network identifiers. A net-
work identifier is a character string used by the Net-
work Selection component of the system to provide
application-specific default network search paths. A
network identifier must consist of non-null characters
and must have a length of at least 1. No maximum
length is specified. Network identifiers are normally
chosen by the system administrator. A network identif-
ier is also the first field in any /etc/netconfig file
entry. NETPATH thus provides a link into the
/etc/netconfig file and the information about a net-
work contained in that network's entry. /etc/netconfig
is maintained by the system administrator. The library
routines described in getnetpath(3NSL) access the NET-
PATH environment variable.
NLSPATH
Contains a sequence of templates which catopen(3C) and
gettext(3C) use when attempting to locate message
catalogs. Each template consists of an optional pre-
fix, one or more substitution fields, a filename and
an optional suffix. For example:
NLSPATH="/system/nlslib/%N.cat"
defines that catopen() should look for all message
catalogs in the directory /system/nlslib, where the
catalog name should be constructed from the name
parameter passed to catopen(), %N, with the suffix
.cat.
Substitution fields consist of a % symbol, followed by
a single-letter keyword. The following keywords are
currently defined:
%N The value of the name parameter passed to cato-
pen().
%L The value of LANG or LC_MESSAGES.
%l The language element from LANG or LC_MESSAGES.
%t The territory element from LANG or LC_MESSAGES.
%c The codeset element from LANG or LC_MESSAGES.
%% A single % character.
An empty string is substituted if the specified value is not
currently defined. The separators "_" and "." are not
included in %t and %c substitutions.
Templates defined in NLSPATH are separated by colons (:). A
leading colon or two adjacent colons (::) is equivalent to
specifying %N. For example:
NLSPATH=":%N.cat:/nlslib/%L/%N.cat"
indicates to catopen() that it should look for the requested
message catalog in name, name.cat and
/nlslib/$LANG/name.cat. For gettext(), %N automatically maps
to "messages".
If NLSPATH is unset or NULL, catopen() and gettext() call
setlocale(3C), which checks LANG and the LC_* variables to
locate the message catalogs.
NLSPATH will normally be set up on a system wide basis
(in /etc/profile) and thus makes the location and nam-
ing conventions associated with message catalogs tran-
sparent to both programs and users.
PATH The sequence of directory prefixes that sh(1),
time(1), nice(1), nohup(1), and other utilities apply
in searching for a file known by an incomplete path
name. The prefixes are separated by colons (:).
login(1) sets PATH=/usr/bin. For more detail, see
sh(1).
SEV_LEVEL
Define severity levels and associate and print strings
with them in standard format error messages; see
addseverity(3C), fmtmsg(1), and fmtmsg(3C).
TERM The kind of terminal for which output is to be
prepared. This information is used by commands, such
as vi(1), which may exploit special capabilities of
that terminal.
TZ Timezone information. The contents of this environment
variable are used by the functions ctime(3C),
localtime(3C), strftime(3C), and mktime(3C) to over-
ride the default timezone. If TZ is not in the follow-
ing form, it designates a path to a timezone database
file relative to /usr/share/lib/zoneinfo/, ignoring
the first character if it is a colon (:). Otherwise,
TZ has the form:
stdoffset[dst[offset][,start[/time],end[/time]]]
std and dst
Three or more bytes that are the designation for
the standard (std) and daylight savings time
(dst) timezones. Only std is required. If dst is
missing, then daylight savings time does not
apply in this locale. Upper- and lower-case
letters from the portable character set are
explicitly allowed. Any graphic characters from
the portable character set except a leading colon
(:) or digits, the comma (,), the minus (-), the
plus (+), and the null character are permitted to
appear in these fields, but their meaning is
unspecified.
offset
Indicates the value one must add to the local
time to arrive at Coordinated Universal Time. The
offset has the form:
hh[:mm[:ss]]
The minutes (mm) and seconds (ss) are optional.
The hour (hh) is required and may be a single
digit. The offset following std is required. If
no offset follows dst , daylight savings time is
assumed to be one hour ahead of standard time.
One or more digits may be used. The value is
always interpreted as a decimal number. The hour
must be between 0 and 24, and the minutes (and
seconds), if present, must be between 0 and 59.
Out of range values may cause unpredictable
behavior. If preceded by a "-", the timezone is
east of the Prime Meridian. Otherwise, it is west
of the Prime Meridian (which may be indicated by
an optional preceding "+" sign).
start/time,end/time
Indicate when to change to and back from daylight
savings time, where start/time describes when the
change from standard time to daylight savings
time occurs, and end/time describes when the
change back happens. Each time field describes
when, in current local time, the change is made.
The formats of start and end are one of the fol-
lowing:
Jn The Julian day n (1 < n < 365). Leap days
are not counted. That is, in all years,
February 28 is day 59 and March 1 is day
60. It is impossible to refer to the occa-
sional February 29.
n The zero-based Julian day (0 < n < 365).
Leap days are counted, and it is possible
to refer to February 29.
Mm.n.d
The d**th day, (0 < d < 6) of week n of
month m of the year (1 < n < 5, 1 < m <
12), where week 5 means "the last d-day in
month m" which may occur in either the
fourth or the fifth week). Week 1 is the
first week in which the d**th day occurs.
Day zero is Sunday.
Implementation specific defaults are used for start
and end if these optional fields are not given.
The time has the same format as offset except
that no leading sign ("-" or "+" is allowed. The
default, if time is not given is 02:00:00.
SEE ALSO
cat(1), date(1), ed(1), fmtmsg(1), localedef(1), login(1),
ls(1), mkmsgs(1), nice(1), nohup(1), sh(1), sort(1),
time(1), vi(1), exec(2), addseverity(3C), catopen(3C),
ctime(3C), ctype(3C), fmtmsg(3C), getdate(3C),
getnetpath(3NSL), gettext(3C), gettxt(3C), localeconv(3C),
mblen(3C), mktime(3C), printf(3C), setlocale(3C),
strcoll(3C), strftime(3C), strtod(3C), strxfrm(3C),
TIMEZONE(4), netconfig(4), passwd(4), profile(4)
Man(1) output converted with
man2html