The title says it all. What command I need to run from a terminal to find my user ID (UID)?
Asked
Active
Viewed 7.6e+01k times
361
5 Answers
471
There are a couple of ways:
Using the id command you can get the real and effective user and group IDs.
id -u <username>
If no username is supplied to
id
, it will default to the current user.Using the shell variable. (It is not an environment variable, and thus is not available in
env
).echo $UID
-
9
-
26
-
It's worth noting that, due to the fact that the variables are resolved before being passed to a command, we have that
sudo echo ${UID}
prints out1000
(or whatever your sudoer user's UID is), whereassudo id -u
prints out0
. – adentinger Dec 19 '18 at 20:33 -
The
username
is optional, defaulting to yourself. Maybe square brackets would be better for indicating this, instead of angle brackets. – mwfearnley May 13 '19 at 15:44 -
3The second part of this answer is wrong. The variable in question is explicitly not an environment variable. It's a shell variable. Big difference. You can see this with
echo $UID
versusenv|grep ^UID
in Bash, for example. This means in particular that the first method is more robust and the second will only work in shell scripts, not - say - in something like Python (python -c 'import os; print(os.environ)'
to see the environment). – 0xC0000022L Dec 16 '20 at 15:39 -
@0xC0000022L That seems to be the case indeed. I get 1000 from
echo $UID
and an empty line from$ printenv UID
. – Daniel Dec 05 '23 at 11:22
19
Try also :
getent passwd username
This will display user id , group id and home directory .
Or:
grep username /etc/passwd

nux
- 38,017
- 35
- 118
- 131
-
why to try long or alternative command while
echo $UID
andid -u
is simple and exact according to question? – Pandya May 17 '14 at 13:37 -
7
5
Get the User ID (UID) and Group ID (GID) for the running user
id -u # user ID (UID)
id -g # group ID (GID)
Example run and output for the active user (myself):
$ id -u
1000
$ id -g
1000
and for the root user (via sudo
):
$ sudo id -u
[sudo] password for gabriel:
0
$ sudo id -g
0
Note that the first user is generally 1000
for both the UID and GID, and the root user is generally 0
for both the UID and GID.

Gabriel Staples
- 9,155
echo $UID
? – Louis Matthijssen May 17 '14 at 13:17