xref: /netbsd-src/share/man/man7/environ.7 (revision 6cf6fe02a981b55727c49c3d37b0d8191a98c0ee)
1.\"	$NetBSD: environ.7,v 1.25 2011/01/21 10:03:27 wiz 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 January 21, 2011
33.Dt ENVIRON 7
34.Os
35.Sh NAME
36.Nm environ
37.Nd user process environment
38.Sh SYNOPSIS
39.Vt extern char ** Ns Dv 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 ".Ev 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.Ql K
71or
72.Ql k ,
73in units of a megabyte by specifying a number followed by
74.Ql M
75or
76.Ql m
77and in units of a gigabyte by specifying a number followed
78by
79.Ql G
80or
81.Ql 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.
163.Ev PATH
164is set to
165.Pp
166.Dl /usr/bin:/bin:/usr/pkg/bin:/usr/local/bin
167.Pp
168initially by
169.Xr login 1 .
170.It Ev PRINTER
171The name of the default printer to be used by
172.Xr lpr 1 ,
173.Xr lpq 1 ,
174and
175.Xr lprm 1 .
176.It Ev RCMD_CMD
177When using the
178.Xr rcmd 3
179function, this variable is used as the program to run instead of
180.Xr rcmd 1 .
181.It Ev SHELL
182The full pathname of the user's login shell.
183.It Ev TERM
184The kind of terminal for which output is to be prepared.
185This information is used by commands, such as
186.Xr nroff 1
187.\" or
188.\" .Xr plot 1
189which may exploit special terminal capabilities.
190See
191.Pa /usr/share/misc/terminfo
192.Pq Xr terminfo 5
193for a list of terminal types.
194.It Ev TERMCAP
195The string describing the terminal in
196.Ev TERM ,
197or, if it begins with a
198.Ql / ,
199the name of the termcap file.
200This is only checked if
201.Ev TERMINFO
202is not set.
203.It Ev TERMINFO
204The string describing the terminal in
205.Ev TERM ,
206or, if it begins with a
207.Ql / ,
208the name of the terminfo file.
209.It Ev TIMEFORMAT
210A
211.Xr strftime 3
212format string that may be used by programs such as
213.Xr dump 8
214for formatting timestamps.
215.It Ev TMPDIR
216The directory in which to store temporary files.
217Most applications use either
218.Pa /tmp
219or
220.Pa /var/tmp .
221Setting this variable will make them use another directory.
222.It Ev TZ
223The timezone to use when displaying dates.
224The normal format is a pathname relative to
225.Pa /usr/share/zoneinfo .
226For example, the command
227.Pp
228.Dl env TZ=US/Pacific date
229.Pp
230displays the current time in California.
231See
232.Xr tzset 3
233for more information.
234.It Ev USER
235The login name of the user.
236It is recommended that portable applications use
237.Ev LOGNAME
238instead.
239.El
240.Pp
241Further names may be placed in the environment by the
242.Ic export
243command and
244.Ar name=value
245arguments in
246.Xr sh 1 ,
247or by the
248.Ic setenv
249command if you use
250.Xr csh 1 .
251It is unwise to change certain
252.Xr sh 1
253variables that are frequently exported by
254.Pa .profile
255files, such as
256.Ev MAIL ,
257.Ev PS1 ,
258.Ev PS2 ,
259and
260.Ev IFS ,
261unless you know what you are doing.
262.Sh SEE ALSO
263.Xr audioctl 1 ,
264.Xr audioplay 1 ,
265.Xr audiorecord 1 ,
266.Xr csh 1 ,
267.Xr ex 1 ,
268.Xr login 1 ,
269.Xr man 1 ,
270.Xr more 1 ,
271.Xr sh 1 ,
272.Xr execve 2 ,
273.Xr _DIAGASSERT 3 ,
274.Xr execle 3 ,
275.Xr malloc 3 ,
276.Xr rcmd 3 ,
277.Xr system 3 ,
278.Xr termcap 3 ,
279.Xr terminfo 3 ,
280.Xr audio 4 ,
281.Xr terminfo 5 ,
282.Xr nls 7 ,
283.Xr dump 8
284.Sh HISTORY
285The
286.Nm
287manual page appeared in
288.Bx 4.2 .
289