xref: /freebsd/usr.bin/id/id.1 (revision 8ddb146abcdf061be9f2c0db7e391697dafad85c)
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.\" $FreeBSD$
33.\"
34.Dd March 5, 2011
35.Dt ID 1
36.Os
37.Sh NAME
38.Nm id
39.Nd return user identity
40.Sh SYNOPSIS
41.Nm
42.Op Ar user
43.Nm
44.Fl A
45.Nm
46.Fl G Op Fl n
47.Op Ar user
48.Nm
49.Fl M
50.Nm
51.Fl P
52.Op Ar user
53.Nm
54.Fl c
55.Nm
56.Fl g Op Fl nr
57.Op Ar user
58.Nm
59.Fl p
60.Op Ar user
61.Nm
62.Fl u Op Fl nr
63.Op Ar user
64.Sh DESCRIPTION
65The
66.Nm
67utility displays the user and group names and numeric IDs, of the
68calling process, to the standard output.
69If the real and effective IDs are different, both are displayed,
70otherwise only the real ID is displayed.
71.Pp
72If a
73.Ar user
74(login name or user ID)
75is specified, the user and group IDs of that user are displayed.
76In this case, the real and effective IDs are assumed to be the same.
77.Pp
78The options are as follows:
79.Bl -tag -width indent
80.It Fl A
81Display the process audit user ID and other process audit properties, which
82requires privilege.
83.It Fl G
84Display the different group IDs (effective, real and supplementary)
85as white-space separated numbers, in no particular order.
86.It Fl M
87Display the MAC label of the current process.
88.It Fl P
89Display the id as a password file entry.
90.It Fl a
91Ignored for compatibility with other
92.Nm
93implementations.
94.It Fl c
95Display current login class.
96.It Fl g
97Display the effective group ID as a number.
98.It Fl n
99Display the name of the user or group ID for the
100.Fl G ,
101.Fl g
102and
103.Fl u
104options instead of the number.
105If any of the ID numbers cannot be mapped into names, the number will be
106displayed as usual.
107.It Fl p
108Make the output human-readable.
109If the user name returned by
110.Xr getlogin 2
111is different from the login name referenced by the user ID, the name
112returned by
113.Xr getlogin 2
114is displayed, preceded by the keyword
115.Dq login .
116The user ID as a name is displayed, preceded by the keyword
117.Dq uid .
118If the effective user ID is different from the real user ID, the real user
119ID is displayed as a name, preceded by the keyword
120.Dq euid .
121If the effective group ID is different from the real group ID, the real group
122ID is displayed as a name, preceded by the keyword
123.Dq rgid .
124The list of groups to which the user belongs is then displayed as names,
125preceded by the keyword
126.Dq groups .
127Each display is on a separate line.
128.It Fl r
129Display the real ID for the
130.Fl g
131and
132.Fl u
133options instead of the effective ID.
134.It Fl u
135Display the effective user ID as a number.
136.El
137.Sh EXIT STATUS
138.Ex -std
139.Sh EXAMPLES
140Show information for the user
141.Ql bob
142as a password file entry:
143.Bd -literal -offset indent
144$ id -P bob
145bob:*:0:0::0:0:Robert:/bob:/usr/local/bin/bash
146.Ed
147.Pp
148Same output as
149.Xr groups 1 for the root user:
150.Bd -literal -offset indent
151$ id -Gn root
152wheel operator
153.Ed
154.Pp
155Show human readable information about
156.Ql alice :
157.Bd -literal -offset indent
158$ id -p alice
159uid     alice
160groups  alice webcamd vboxusers
161.Ed
162.Pp
163Assuming the user
164.Ql bob
165executed
166.Dq Nm su Fl l
167to simulate a root login, compare the result of the following commands:
168.Bd -literal -offset indent
169# id -un
170root
171# who am i
172bob          pts/5        Dec  4 19:51
173.Ed
174.Sh SEE ALSO
175.Xr groups 1 ,
176.Xr who 1
177.Sh STANDARDS
178The
179.Nm
180function is expected to conform to
181.St -p1003.2 .
182.Sh HISTORY
183The
184historic
185.Xr groups 1
186command is equivalent to
187.Dq Nm id Fl Gn Op Ar user .
188.Pp
189The
190historic
191.Xr whoami 1
192command is equivalent to
193.Dq Nm id Fl un .
194.Pp
195The
196.Nm
197command appeared in
198.Bx 4.4 .
199