Add the DragonFly cvs id and perform general cleanups on cvs/rcs/sccs ids. Most
[dragonfly.git] / usr.bin / printenv / printenv.1
1 .\" Copyright (c) 1980, 1990, 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" This code is derived from software contributed to Berkeley by
5 .\" the Institute of Electrical and Electronics Engineers, Inc.
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. All advertising materials mentioning features or use of this software
15 .\"    must display the following acknowledgement:
16 .\"     This product includes software developed by the University of
17 .\"     California, Berkeley and its contributors.
18 .\" 4. Neither the name of the University nor the names of its contributors
19 .\"    may be used to endorse or promote products derived from this software
20 .\"    without specific prior written permission.
21 .\"
22 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
23 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
26 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32 .\" SUCH DAMAGE.
33 .\"
34 .\"     @(#)printenv.1  8.1 (Berkeley) 6/6/93
35 .\" $FreeBSD: src/usr.bin/printenv/printenv.1,v 1.6.2.10 2002/06/26 08:25:30 tjr Exp $
36 .\" $DragonFly: src/usr.bin/printenv/printenv.1,v 1.2 2003/06/17 04:29:30 dillon Exp $
37 .\"
38 .Dd June 6, 1993
39 .Dt PRINTENV 1
40 .Os
41 .Sh NAME
42 .Nm printenv , env
43 .Nd print out the environment, set and print environment
44 .Sh SYNOPSIS
45 .Nm
46 .Op Ar name
47 .Nm env
48 .Op Fl
49 .Op Fl i
50 .Op Ar name Ns = Ns Ar value ...
51 .Op Ar utility Oo Ar argument ... Oc
52 .Sh DESCRIPTION
53 The
54 .Nm
55 utility prints out the names and values of the variables in the environment,
56 with one name/value pair per line.
57 If
58 .Ar name
59 is specified, only
60 its value is printed.
61 .Pp
62 Some shells may provide a builtin
63 .Nm
64 command which is similar or identical to this utility.
65 Consult the
66 .Xr builtin 1
67 manual page.
68 .Pp
69 The
70 .Nm env
71 utility executes
72 .Ar utility
73 after modifying the environment as
74 specified on the command line.
75 The option
76 .Ar name Ns = Ns Ar value
77 specifies
78 an environment variable,
79 .Ar name  ,
80 with a value of
81 .Ar value  .
82 .Pp
83 The options are as follows:
84 .Bl -tag -width indent
85 .It Fl i
86 Execute the
87 .Ar utility
88 with only those environment values specified.
89 The environment inherited
90 by
91 .Nm env
92 is ignored completely.
93 .It Fl
94 Identical to the
95 .Fl i
96 option, available for backward compatibility.
97 .El
98 .Pp
99 If no utility is specified,
100 .Nm env
101 prints out the names and values
102 of the variables in the environment, with one name/value pair per line.
103 .Pp
104 The
105 .Nm env
106 utility is sometimes useful with the
107 .Dq Li #!
108 construct (see
109 .Xr execve 2 ) .
110 The only difference between
111 .Dq Li #!/usr/local/bin/foo
112 and
113 .Dq Li "#!/usr/bin/env\ /usr/local/bin/foo"
114 is that the latter works even if
115 .Pa /usr/local/bin/foo
116 is itself interpreted.
117 Using
118 .Nm env
119 this way also allows one to reference
120 .Pa foo
121 without the path,
122 as well as set up the environment as desired.
123 .Sh DIAGNOSTICS
124 .Ex -std printenv
125 .Pp
126 .Ex -std env
127 An exit status of 126 indicates
128 .Ar utility
129 was found, but could not be executed.
130 An exit status of 127 indicates
131 .Ar utility
132 could not be found.
133 .Sh SEE ALSO
134 .Xr csh 1 ,
135 .Xr sh 1 ,
136 .Xr execvp 3 ,
137 .Xr environ 7
138 .Sh STANDARDS
139 The
140 .Nm env
141 utility conforms to
142 .St -p1003.1-2001 .
143 .Sh HISTORY
144 The
145 .Nm
146 command appeared in
147 .Bx 3.0 .
148 .Sh BUGS
149 The
150 .Nm env
151 utility doesn't handle utility arguments with equal (``='') signs in their
152 names, for obvious reasons.