For the complete documentation index, see llms.txt. This page is also available as Markdown.

id(1)

id — 返回用户身份

名称

id

概要

id [user] id -A id -G [-n] [user] id -M id -P [user] id -c id -d [user] id -g [-nr] [user] id -p [user] id -s [user] id -u [-nr] [user]

描述

id 实用程序将调用进程的用户和组名以及数字 ID 显示到标准输出。如果实际 ID 和有效 ID 不同,则两者都显示;否则只显示实际 ID。

如果指定了 user(登录名或用户 ID),则显示该用户的用户和组 ID。在这种情况下,假定实际 ID 和有效 ID 相同。

选项如下:

-A 显示进程审计用户 ID 和其他进程审计属性,这需要特权。

-G 以空格分隔的数字形式显示不同的组 ID(有效的、实际的和补充的),顺序不定。

-M 显示当前进程的 MAC 标签。

-P 以密码文件条目的形式显示 ID。

-a 为兼容其他 id 实现而忽略。

-c 显示当前登录类。

-d 显示当前或指定用户的家目录。

-g 以数字形式显示有效组 ID。

-n 对于 -G、-g 和 -u 选项,显示用户或组 ID 的名称而非数字。如果任何 ID 号无法映射为名称,则照常显示数字。

-p 使输出易于阅读。如果 getlogin(2) 返回的用户名与用户 ID 引用的登录名不同,则显示 getlogin(2) 返回的名称,前面加上关键字 "login"。用户 ID 以名称形式显示,前面加上关键字 "uid"。如果有效用户 ID 与实际用户 ID 不同,则实际用户 ID 以名称形式显示,前面加上关键字 "euid"。如果有效组 ID 与实际组 ID 不同,则实际组 ID 以名称形式显示,前面加上关键字 "rgid"。然后以名称形式显示用户所属的组列表,前面加上关键字 "groups"。每项显示单独一行。

-r 对于 -g 和 -u 选项,显示实际 ID 而非有效 ID。

-s 显示当前或指定用户的 shell。

-u 以数字形式显示有效用户 ID。

退出状态

id 实用程序成功时退出值为 0,发生错误时大于 0。

实例

以密码文件条目的形式显示用户 bob 的信息:

与 root 用户的 groups(1) 输出相同:

显示关于 alice 的易读信息:

假设用户 bob 执行了 “su -l” 来模拟 root 登录,比较以下命令的结果:

参见

groups(1), who(1), groups(7)

标准

id 实用程序预期符合 IEEE Std 1003.1-2024 (POSIX.1)。-A、-M、-P、-c、-d、-p 和 -s 选项是 FreeBSD 扩展。

历史

历史上的 groups(1) 命令等同于 “id -Gn [user]”。

历史上的 whoami(1) 命令等同于 “id -un”。

id 命令首次出现于 4.4BSD。

最后更新于

这有帮助吗?