xref: /netbsd-src/share/man/man7/environ.7 (revision b1c86f5f087524e68db12794ee9c3e3da1ab17a0)
1.\"	$NetBSD: environ.7,v 1.22 2010/03/22 18:58:32 joerg Exp $
2.\"
3.\" Copyright (c) 1983, 1990, 1993
4.\"	The Regents of the University of California.  All rights reserved.
5.\"
6.\" Redistribution and use in source and binary forms, with or without
7.\" modification, are permitted provided that the following conditions
8.\" are met:
9.\" 1. Redistributions of source code must retain the above copyright
10.\"    notice, this list of conditions and the following disclaimer.
11.\" 2. Redistributions in binary form must reproduce the above copyright
12.\"    notice, this list of conditions and the following disclaimer in the
13.\"    documentation and/or other materials provided with the distribution.
14.\" 3. Neither the name of the University nor the names of its contributors
15.\"    may be used to endorse or promote products derived from this software
16.\"    without specific prior written permission.
17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
19.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
22.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
23.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
24.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
27.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28.\" SUCH DAMAGE.
29.\"
30.\"	@(#)environ.7	8.3 (Berkeley) 4/19/94
31.\"
32.Dd July 5, 2005
33.Dt ENVIRON 7
34.Os
35.Sh NAME
36.Nm environ
37.Nd user process environment
38.Sh SYNOPSIS
39.Ar extern char **environ ;
40.Sh DESCRIPTION
41An array of strings called the
42.Em environment
43is made available by
44.Xr execve 2
45when a process begins.
46By convention these strings have the form
47.Dq Ar name=value .
48The following names are used by various commands:
49.Bl -tag -width LIBC_DIAGASSERT
50.It Ev AUDIOCTLDEVICE
51The name of the audio control device to be used by
52.Xr audioctl 1 ,
53.Xr audioplay 1
54and
55.Xr audiorecord 1 .
56.It Ev AUDIODEVICE
57The name of the audio device to be used by
58.Xr audioplay 1
59and
60.Xr audiorecord 1 .
61.It Ev BLOCKSIZE
62The size of the block units used by several commands, most notably
63.Xr df 1 ,
64.Xr du 1
65and
66.Xr ls 1 .
67.Ev BLOCKSIZE
68may be specified in units of a byte by specifying a number,
69in units of a kilobyte by specifying a number followed by
70.Dq K
71or
72.Dq k ,
73in units of a megabyte by specifying a number followed by
74.Dq M
75or
76.Dq m
77and in units of a gigabyte by specifying a number followed
78by
79.Dq G
80or
81.Dq g .
82Sizes less than 512 bytes or greater than a gigabyte are ignored.
83.It Ev EXINIT
84A startup list of commands read by
85.Xr ex 1
86and
87.Xr vi 1 .
88.It Ev HOME
89A user's login directory, set by
90.Xr login 1
91from the password file
92.Xr passwd 5 .
93.It Ev LANG
94Default for all NLS categories.
95Only used if
96.Ev LC_ALL
97or the environment variable for a particular NLS category
98is not provided
99.Ev ( LC_COLLATE ,
100.Ev LC_CTYPE ,
101.Ev LC_MESSAGES ,
102.Ev LC_MONETARY ,
103.Ev LC_NUMERIC ,
104or
105.Ev LC_TIME ) .
106.It Ev LC_ALL
107Override for all NLS categories.
108If set, overrides the values of
109.Ev LC_COLLATE ,
110.Ev LC_CTYPE ,
111.Ev LC_MESSAGES ,
112.Ev LC_MONETARY ,
113.Ev LC_NUMERIC ,
114and
115.Ev LC_TIME .
116.It Ev LC_COLLATE
117NLS string-collation order information.
118.It Ev LC_CTYPE
119NLS character classification, case conversion, and other character attributes.
120.It Ev LC_MESSAGES
121NLS format for affirmative and negative responses.
122.It Ev LC_MONETARY
123NLS rules and symbols for formatting monetary numeric information.
124.It Ev LC_NUMERIC
125NLS rules and symbols for formatting nonmonetary numeric information.
126.It Ev LC_TIME
127NLS rules and symbols for formatting time and date information.
128.It Ev LIBC_DIAGASSERT
129Control how the
130.Fn _DIAGASSERT
131macro (from
132.In assert.h )
133behaves once the assertion is raised.
134Refer to
135.Xr _DIAGASSERT 3
136for more information.
137.It Ev LOGNAME
138The login name of the user.
139.It Ev MALLOC_OPTIONS
140Control the behaviour of the
141.Fn malloc
142function.
143Refer to
144.Xr malloc 3
145for more information.
146.It Ev MIXERDEVICE
147The name of the audio mixer device to be used by
148.Xr mixerctl 1 .
149.It Ev PAGER
150The program used for paginating the output of several commands
151such as
152.Xr man 1 .
153If null or not set, the standard pagination program
154.Xr more 1
155will be used.
156.It Ev PATH
157The sequence of directories, separated by colons, searched by
158.Xr csh 1 ,
159.Xr sh 1 ,
160.Xr system 3 ,
161.Xr execvp 3 ,
162etc, when looking for an executable file.
163PATH is set to
164.Dq /usr/bin:/bin:/usr/pkg/bin:/usr/local/bin
165initially by
166.Xr login 1 .
167.It Ev PRINTER
168The name of the default printer to be used by
169.Xr lpr 1 ,
170.Xr lpq 1 ,
171and
172.Xr lprm 1 .
173.It Ev RCMD_CMD
174When using the
175.Xr rcmd 3
176function, this variable is used as the program to run instead of
177.Xr rcmd 1 .
178.It Ev SHELL
179The full pathname of the user's login shell.
180.It Ev TERM
181The kind of terminal for which output is to be prepared.
182This information is used by commands, such as
183.Xr nroff 1
184.\" or
185.\" .Xr plot 1
186which may exploit special terminal capabilities.
187See
188.Pa /usr/share/misc/termcap
189.Pq Xr termcap 5
190for a list of terminal types.
191.It Ev TERMCAP
192The string describing the terminal in TERM, or, if
193it begins with a '/', the name of the termcap file.
194See
195.Ev TERMPATH
196below,
197.Xr termcap 5 ,
198and
199.Xr termcap 3 .
200.It Ev TERMPATH
201A sequence of pathnames of termcap files, separated by colons or spaces,
202which are searched for terminal descriptions in the order listed.
203Having no
204.Ev TERMPATH
205is equivalent to a
206.Ev TERMPATH
207of
208.Dq Pa $HOME/.termcap:/usr/share/misc/termcap .
209.Ev TERMPATH
210is ignored if
211.Ev TERMCAP
212contains a full pathname.
213.It Ev TIMEFORMAT
214A
215.Xr strftime 3
216format string that may be used by programs such as
217.Xr dump 8
218for formatting timestamps.
219.It Ev TMPDIR
220The directory in which to store temporary files.
221Most applications use either
222.Pa /tmp
223or
224.Pa /var/tmp .
225Setting this variable will make them use another directory.
226.It Ev TZ
227The timezone to use when displaying dates.
228The normal format is a pathname relative to
229.Pa /usr/share/zoneinfo .
230For example, the command
231.Ic env TZ=US/Pacific date
232displays the current time in California.
233See
234.Xr tzset 3
235for more information.
236.It Ev USER
237The login name of the user.
238It is recommended that portable applications use
239.Ev LOGNAME
240instead.
241.El
242.Pp
243Further names may be placed in the environment by the
244.Ic export
245command and
246.Ar name=value
247arguments in
248.Xr sh 1 ,
249or by the
250.Ic setenv
251command if you use
252.Xr csh 1 .
253It is unwise to change certain
254.Xr sh 1
255variables that are frequently exported by
256.Pa .profile
257files, such as
258.Ev MAIL ,
259.Ev PS1 ,
260.Ev PS2 ,
261and
262.Ev IFS ,
263unless you know what you are doing.
264.Sh SEE ALSO
265.Xr audioctl 1 ,
266.Xr audioplay 1 ,
267.Xr audiorecord 1 ,
268.Xr csh 1 ,
269.Xr ex 1 ,
270.Xr login 1 ,
271.Xr man 1 ,
272.Xr more 1 ,
273.Xr sh 1 ,
274.Xr execve 2 ,
275.Xr _DIAGASSERT 3 ,
276.Xr execle 3 ,
277.Xr malloc 3 ,
278.Xr rcmd 3 ,
279.Xr system 3 ,
280.Xr termcap 3 ,
281.Xr audio 4 ,
282.Xr termcap 5 ,
283.Xr nls 7 ,
284.Xr dump 8
285.Sh HISTORY
286The
287.Nm
288manual page appeared in
289.Bx 4.2 .
290