xref: /freebsd/usr.bin/id/id.1 (revision 401ab69cff8fa2320a9f8ea4baa114a6da6c952b)
1.\" Copyright (c) 1991, 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.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\" 3. Neither the name of the University nor the names of its contributors
16.\"    may be used to endorse or promote products derived from this software
17.\"    without specific prior written permission.
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29.\" SUCH DAMAGE.
30.\"
31.\"	@(#)id.1	8.1 (Berkeley) 6/6/93
32.\"
33.Dd March 5, 2011
34.Dt ID 1
35.Os
36.Sh NAME
37.Nm id
38.Nd return user identity
39.Sh SYNOPSIS
40.Nm
41.Op Ar user
42.Nm
43.Fl A
44.Nm
45.Fl G Op Fl n
46.Op Ar user
47.Nm
48.Fl M
49.Nm
50.Fl P
51.Op Ar user
52.Nm
53.Fl c
54.Nm
55.Fl g Op Fl nr
56.Op Ar user
57.Nm
58.Fl p
59.Op Ar user
60.Nm
61.Fl u Op Fl nr
62.Op Ar user
63.Sh DESCRIPTION
64The
65.Nm
66utility displays the user and group names and numeric IDs, of the
67calling process, to the standard output.
68If the real and effective IDs are different, both are displayed,
69otherwise only the real ID is displayed.
70.Pp
71If a
72.Ar user
73(login name or user ID)
74is specified, the user and group IDs of that user are displayed.
75In this case, the real and effective IDs are assumed to be the same.
76.Pp
77The options are as follows:
78.Bl -tag -width indent
79.It Fl A
80Display the process audit user ID and other process audit properties, which
81requires privilege.
82.It Fl G
83Display the different group IDs (effective, real and supplementary)
84as white-space separated numbers, in no particular order.
85.It Fl M
86Display the MAC label of the current process.
87.It Fl P
88Display the id as a password file entry.
89.It Fl a
90Ignored for compatibility with other
91.Nm
92implementations.
93.It Fl c
94Display current login class.
95.It Fl g
96Display the effective group ID as a number.
97.It Fl n
98Display the name of the user or group ID for the
99.Fl G ,
100.Fl g
101and
102.Fl u
103options instead of the number.
104If any of the ID numbers cannot be mapped into names, the number will be
105displayed as usual.
106.It Fl p
107Make the output human-readable.
108If the user name returned by
109.Xr getlogin 2
110is different from the login name referenced by the user ID, the name
111returned by
112.Xr getlogin 2
113is displayed, preceded by the keyword
114.Dq login .
115The user ID as a name is displayed, preceded by the keyword
116.Dq uid .
117If the effective user ID is different from the real user ID, the real user
118ID is displayed as a name, preceded by the keyword
119.Dq euid .
120If the effective group ID is different from the real group ID, the real group
121ID is displayed as a name, preceded by the keyword
122.Dq rgid .
123The list of groups to which the user belongs is then displayed as names,
124preceded by the keyword
125.Dq groups .
126Each display is on a separate line.
127.It Fl r
128Display the real ID for the
129.Fl g
130and
131.Fl u
132options instead of the effective ID.
133.It Fl u
134Display the effective user ID as a number.
135.El
136.Sh EXIT STATUS
137.Ex -std
138.Sh EXAMPLES
139Show information for the user
140.Ql bob
141as a password file entry:
142.Bd -literal -offset indent
143$ id -P bob
144bob:*:0:0::0:0:Robert:/bob:/usr/local/bin/bash
145.Ed
146.Pp
147Same output as
148.Xr groups 1 for the root user:
149.Bd -literal -offset indent
150$ id -Gn root
151wheel operator
152.Ed
153.Pp
154Show human readable information about
155.Ql alice :
156.Bd -literal -offset indent
157$ id -p alice
158uid     alice
159groups  alice webcamd vboxusers
160.Ed
161.Pp
162Assuming the user
163.Ql bob
164executed
165.Dq Nm su Fl l
166to simulate a root login, compare the result of the following commands:
167.Bd -literal -offset indent
168# id -un
169root
170# who am i
171bob          pts/5        Dec  4 19:51
172.Ed
173.Sh SEE ALSO
174.Xr groups 1 ,
175.Xr who 1
176.Sh STANDARDS
177The
178.Nm
179function is expected to conform to
180.St -p1003.2 .
181.Sh HISTORY
182The
183historic
184.Xr groups 1
185command is equivalent to
186.Dq Nm id Fl Gn Op Ar user .
187.Pp
188The
189historic
190.Xr whoami 1
191command is equivalent to
192.Dq Nm id Fl un .
193.Pp
194The
195.Nm
196command appeared in
197.Bx 4.4 .
198