Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
environ(5)	      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 information about a program's environment available to pro-
       grams.

       A name may be placed in the  environment	 by  the  export  command  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	frequently exported by .profile	files; see profile(4).

       The  following  environmental variables can be used by applications 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 information that
	   allows users	to work	with different national	conventions. The  set-
	   locale(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,  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	setlo-
	   cale(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 vari-
	   able	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	 vari-
	   ables.

	   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  classification,  character
	       conversion,  and	 widths	of multibyte characters. When LC_CTYPE
	       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 charac-
	       ters of 1, 2, or	3 column widths. The default "C" locale	corre-
	       sponds  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  message  database
	       being  used.  For  example, an application may have one message
	       database	with French messages, and another database with	German
	       messages.  Message  databases are created by the	mkmsgs(1) com-
	       mand. 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 thou-
	       sands  delimiter.  This environment variable is used by locale-
	       conv(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	speci-
	       fied 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  administra-
	   tor.	 A network identifier is also the first	field in any /etc/net-
	   config file entry. NETPATH thus provides a link into	the  /etc/net-
	   config  file	 and the information about a network contained in that
	   network's entry. /etc/netconfig is maintained by the	system	admin-
	   istrator. The library routines described in getnetpath(3NSL)	access
	   the NETPATH environment variable.

       NLSPATH

	   Contains a sequence of templates which catopen(3C) and  gettext(3C)
	   use	when attempting	to locate message catalogs. Each template con-
	   sists 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  con-
	   structed  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 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 cur-
	   rently 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 mes-
	   sage	catalog	in name, name.cat and /nlslib/$LANG/name.cat. For get-
	   text(), %N automatically maps to "messages".

	   If  NLSPATH	is unset or NULL, catopen() and	gettext() call	setlo-
	   cale(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 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  override  the default timezone. The value of	TZ has
	   one of the two formats (spaces inserted for clarity):

	   :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	desig-
	   nates  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 fol-
	   lows:

	   stdoffset[dst[offset][,start[/time],end[/time]]]

	   std and dst		   Indicate no less than three,	nor more  than
				   {TZNAME_MAX},  bytes	 that are the designa-
				   tion	for the	standard (std) or the alterna-
				   tive	 (dst,	such as	Daylight 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  charac-
					ter  is	 the less-than ('<') character
					and the	last character is the greater-
					than  ('>')  character.	All characters
					between	these quoting  characters  are
					alphanumeric  characters from the por-
					table 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 charac-
					ters 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 {TZNAME_MAX}	bytes,
				   or  if  they	 contain characters other than
				   those specified.

	   offset		   Indicate the	value  one  must  add  to  the
				   local time to arrive	at Coordinated Univer-
				   sal 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 follows dst, day-
				   light 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	 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
				   occurs.  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	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 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), get-
       date(3C), getnetpath(3NSL),  gettext(3C),  gettxt(3C),  localeconv(3C),
       mblen(3C),  mktime(3C),	printf(3C),  setlocale(3C), strcoll(3C), strf-
       time(3C),   strtod(3C),	 strxfrm(3C),	 TIMEZONE(4),	 netconfig(4),
       passwd(4), profile(4)

SunOS 5.10			  19 Nov 2002			    environ(5)

NAME | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=environ&sektion=5&manpath=SunOS+5.10>

home | help