environ(5) environ(5) NAME environ - user environment DESCRIPTION When a process begins execution, exec routines make 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 information about a program's environment available to programs. The following environmental variables can be used by applications and are expected to be set in the target runtime environment. HOME The name of the user's login directory, set by login(1) from the password file (see passwd(4)). LANG The program's locale. Locales consist of files that describe the conventions appropriate to some nationality, culture, and language. Generally, users determine which files are selected by manipulating the environment variables described below. For background, see setlocale(3C). Locales are partitioned into categories LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC, and LC_TIME (see below for what the categories control). Each category has a corresponding environment variable that the user can set to specify that category's locale: LC_CTYPE=fr[ancais] The LANG environment variable is searched if the environment variable for a category is unset or empty: LANG=fr LC_COLLATE=de[utsche] sets all the categories but LC_COLLATE to French. If LANG is unset or empty, the default C locale is used. LC_COLLATE specifies the collation order used. The information for this category is stored in a database created by the colltbl(1M) command. This environment variable affects sort(1), strcoll(3C), and strxfrm(3C). LC_CTYPE specifies character classification, character conversion, and widths of multibyte characters. The information for this category is stored in a database created by the chrtbl(1M) or wchrtbl(1M) commands. The default C locale uses the 7-bit US ASCII character set. This environment variable affects many commands and functions, among them, cat(1), ed(1), ls(1), vi(1), ctype(3C), and mbchar(3C), LC_MESSAGES specifies the message database used. A command or application may have French and German message databases, for example. Message databases are created by the mkmsgs(1) or gencat(1) commands. This environment variable affects gettxt(1), srchtxt(1), catgets(3C), and gettxt(3C), and every command that generates locale-specific output messages. LC_MONETARY specifies the monetary symbols and delimiters used. The information for this category is stored in a database created by the montbl(1M) command. This environment variable affects localeconv(3C). LC_NUMERIC specifies the decimal and thousands delimiters. The information for this category is stored in a database created by the chrtbl(1M) or wchrtbl(1M) commands. The default C locale uses a period (.) as the decimal delimiter and no thousands delimiter. This environment variable affects localeconv(3C), printf(3S), scanf(3S), and strtod(3C). LC_TIME specifies date and time formats. The information for this category is stored in a database specified in strftime(4). The default C locale uses US date and time formats. This environment variable affects many commands and functions, among them, at(1), calendar(1), date(1), getdate(3C), and strftime(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 UNIX System V networking libraries (see intro(3N)) 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. NETPATH 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(3C) access the NETPATH environment variable. NOMSGLABEL Used to turn off the label portion of pfmt message component. (see pfmt(3C)). NOMSGSEVERITY Used to turn off the severity portion of pfmt message component. (see pfmt(3C)). SEV_LEVEL Defines severity levels and associates and prints strings with them in standard format error messages (see addseverity(3C), fmtmsg(1), and fmtmsg(3C)). NLSPATH Contains a sequence of templates which catopen(3C) uses when attempting to locate message catalogs. 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 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 catopen. %L The value of LANG environment variable if oflag is 0. The value of LC_MESSAGES category if oflag is NL_CAT_LOCALE. %l The language element from LANG environment variable if oflag is 0. The language element from LC_MESSAGES category if oflag is NL_CAT_LOCALE. %t The territory element from LANG environment variable if oflag is 0. The territory element from LC_MESSAGES category if oflag is NL_CAT_LOCALE. %c The codeset element from LANG environment variable if oflag is 0. The codeset element from LC_MESSAGES category if oflag is NL_CAT_LOCALE. %% A single % character. ______________________________________________________________________________ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | where oflag is a second argument of catopen. 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/name4 def.cat (if oflag is set to 0). LD_LIBRARY_PATH Can override the normal library search paths (/lib:/lib/cmplrs/cc:/usr/lib:/usr/lib/cmplrs/cc) (For more detail, see rld(1).) _RLD_ARGS Can specify runtime linker options. (For more detail, see rld(1).) PATH The sequence of directory prefixes that sh(1), time(1), nice(1), nohup(1), and so on apply in searching for a file known by an incomplete pathname. The prefixes are separated by colons (:). login(1) sets PATH=:/usr/sbin:/usr/bsd:/sbin:/usr/bin:/usr/bin/X11. (For more detail, see login(1) and sh(1).) SHELL When the shell is invoked, it scans the environment for this name. If it is found and rsh is the filename part of its value, the shell becomes a restricted shell. The value of this variable should be specified with an absolute pathname. The variable is used by make(1), ksh(1), sh(1), and vi(1), among other commands. TERM The kind of terminal for which output is to be prepared. This information is used by commands, such as mm(1) or vi(1), which may exploit special capabilities of that terminal. TZ Time zone information. The contents of the environment variable named TZ are used by the functions ctime(3C), localtime (see ctime(3C)), strftime(3C), and mktime(3C) to override the default timezone. If the first character of TZ is a colon (:), the behavior is implementation-defined. In this implementation, it is the name (not including the starting colon (:) character) of a zoneinfo file relative to /usr/lib/locale/TZ/. For sh(1) users, the following example sets the TZ variable to US Central timezone: TZ=:US/Central and the zoneinfo file /usr/lib/locale/TZ/US/Central will be used by the time functions mentioned above (See zic(1M) for more information on zoneinfo files). 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 lowercase letters are allowed. Any characters except a leading colon (:), digits, a comma (,), a minus (-), or a plus (+) are allowed. 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 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 (which may be indicated by an optional preceding ``+'' sign). start/time,end/time Indicates 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 following: 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 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 dth 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 dth 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. For example, the most complete setting for New Jersey in 1986 could be EST5:00:00EDT4:00:00,116/2:00:00,298/2:00:00 or simply EST5EDT In the longer version of the New Jersey example of TZ, EST is the abbreviation for the main time zone, 5:00:00 is the difference, in hours, minutes, and seconds between GMT and the main time zone, EDT is the abbreviation for the alternate time zone, 4:00:00 is the difference, in hours, minutes, and seconds between GMT and the alternate time zone, 116 is the number of the day of the year (Julian day) when the alternate time zone will take effect, 2:00:00 is the number of hours, minutes, and seconds past midnight when the alternate time zone will take effect, 298 is the number of the day of the year when the alternate time zone will end, and 2:00:00 is the number of hours, minutes, and seconds past midnight when the alternate time zone will end. Timezone specifications under the IRIX 4 operating system used a ";" to separate the dst field from the start field. In conformance with the X/Open XPG4 standard, this is no longer legal, and a "," must be used in place of the ";". Further names may be placed in the environment by the export command and name=value arguments in sh(1), or by exec(2). It is unwise to conflict with certain shell variables that are frequently exported by .profile files: MAIL, PS1, PS2, IFS (see profile(4)). SEE ALSO cat(1), chrtbl(1M), colltbl(1M), date(1), ed(1), fmtmsg(1), gencat(1), gettxt(1), login(1), ls(1), mkmsgs(1), mm(1), montbl(1M), nice(1), nohup(1), sh(1), sort(1), srchtxt(1), time(1), vi(1), wchrtbl(1M), zdump(1M), zic(1M), exec(2), addseverity(3C), catgets(3C), catopen(3C), ctime(3C), ctype(3C), fmtmsg(3C), getdate(3C), getnetpath(3N), gettxt(3C), localeconv(3C), mbchar(3C), mktime(3C), printf(3S), scanf(3S), setlocale(3C), strcoll(3C), strftime(3C), strtod(3C), strxfrm(3C), netconfig(4), passwd(4), profile(4), strftime(4), strftime(4), timezone(4) Page 7