Standards, Environments, and Macros 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 informa-
tion 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 variable for a particular
category is unset or null. If, however, LCAL 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(LCTYPE, ""), setlo-
cale() will query the LCTYPE environment variable
first to see if it is set and non-null. If LCTYPE 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 LCTYPE are unset or NUL, the default
"C" locale will be used to set the LCTYPE category.
Most commands will invoke setlocale(LCAL, "") prior to
any other processing. This allows the command to be used
with different national conventions by setting the
appropriate environment variables.
SunOS 5.11 Last change: 19 Nov 2002 1
Standards, Environments, and Macros environ(5)
The following environment variables correspond to each
category of setlocale(3C):
LCAL
If set to a valid, non-empty string value, override
the values of LANG and all the other LC*variables.
LCOLATE
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 vari-
able affects strcoll(3C) and strxfrm(3C).
LCTYPE
This category specifies character classification,
character conversion, and widths of multibyte char-
acters. When LCTYPE is set to a valid value, the
calling utility can display and handle text and file
names containing valid characters for that locale;
Extended Unix Code (EUC) characters where any indi-
vidual 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 ASCI
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).
LCMESAGES
This category specifies the language of the message
database being used. For example, an application may
have one message database with French messages, and
another database with German messages. Message data-
bases are created by the mkmsgs(1) command. This
environment variable is used by exstr(1), gettxt(1),
srchtxt(1), gettxt(3C), and gettext(3C).
LCMONETARY
This category specifies the monetary symbols and
delimiters used for a particular locale. The
SunOS 5.11 Last change: 19 Nov 2002 2
Standards, Environments, and Macros environ(5)
information corresponding to this category is stored
in a database created by the localedef(1) command.
This environment variable is used by localeconv(3C).
LCNUMERIC
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).
LCTIME
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 network
identifier is a character string used by the Network
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 identifier is also
the first field in any /etc/netconfig file entry. NET-
PATH thus provides a link into the /etc/netconfig file
and the information about a network contained in that
network's entry. /etc/netconfig is maintained by the
system administrator. The library routines described in
getnetpath(3NSL) access the NETPATH environment vari-
able.
SunOS 5.11 Last change: 19 Nov 2002 3
Standards, Environments, and Macros environ(5)
NLSPATH
Contains a sequence of templates which catopen(3C) and
gettext(3C) use when attempting to locate message cata-
logs. Each template consists of an optional prefix, 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 cata-
logs 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 catopen().
%L
The value of LANG or LCMESAGES.
%l
The language element from LANG or LCMESAGES.
%t
The territory element from LANG or LCMESAGES.
%c
The codeset element from LANG or LCMESAGES.
%%
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.
SunOS 5.11 Last change: 19 Nov 2002 4
Standards, Environments, and Macros environ(5)
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 NUL, 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 naming
conventions associated with message catalogs transparent
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 search-
ing 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).
SEVLEVEL
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 override
the default timezone. The value of TZ has one of the two
formats (spaces inserted for clarity):
SunOS 5.11 Last change: 19 Nov 2002 5
Standards, Environments, and Macros environ(5)
:characters
or
std offset dst offset, rule
If TZ is of the first format (that is, if the first
character is a colon (:)), or if TZ is not of the second
format, then TZ designates a path to a timezone database
file relative to /usr/share/lib/zoneinfo/, ignoring a
leading colon if one exists.
Otherwise, TZ is of the second form, which when expanded
is as follows:
stdoffset[dst[offset][,start[/time],end[/time]
std and dst
Indicate no less than three, nor more than
{TZNAMEMAX}, bytes that are the designation for the
standard (std) or the alternative (dst, such as Day-
light Savings Time) timezone. Only std is required;
if dst is missing, then the alternative time does
not apply in this timezone. Each of these fields can
occur in either of two formats, quoted or unquoted:
o In the quoted form, the first character is
the less-than ('<') character and the last
character is the greater-than ('>') charac-
ter. All characters between these quoting
characters are alphanumeric characters from
the portable character set in the current
locale, the plus-sign (']') character, or
the minus-sign ('-') character. The std and
dst fields in this case do not include the
quoting characters.
o In the unquoted form, all characters in
these fields are alphabetic characters from
the portable character set in the current
locale.
The interpretation of these fields is unspecified if
either field is less than three bytes (except for
the case when dst is missing), more than
{TZNAMEMAX} bytes, or if they contain characters
other than those specified.
offset
SunOS 5.11 Last change: 19 Nov 2002 6
Standards, Environments, and Macros environ(5)
Indicate 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 can be a single digit. The
offset following std is required. If no offset fol-
lows dst, daylight savings time is assumed to be one
hour ahead of standard time. One or more digits can
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 can cause
unpredictable behavior. If preceded by a "-", the
timezone is east of the Prime Meridian. Otherwise,
it is west of the Prime Meridian (which can be indi-
cated 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
occurs. Each time field describes when, in current
local time, the change is made.
The formats of start and end are one of the follow-
ing:
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 impossi-
ble to refer to the occasional 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
SunOS 5.11 Last change: 19 Nov 2002 7
Standards, Environments, and Macros environ(5)
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 specified.
The time has the same format as offset except that
no leading sign ("-" or "]" ) is allowed. If time is
not specified, the default value 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)
SunOS 5.11 Last change: 19 Nov 2002 8
|