/usr/bin/id [-p] [user]
/usr/bin/id -a [-p] [user]
/usr/bin/id -G [-n] [user]
/usr/bin/id -g [-nr] [user]
/usr/bin/id -u [-nr] [user]
/usr/xpg4/bin/id [-p] [user]
/usr/xpg4/bin/id -a [-p] [user]
/usr/xpg4/bin/id -G [-n] [user]
/usr/xpg4/bin/id -g [-nr] [user]
/usr/xpg4/bin/id -u [-nr] [user]
如果未提供任何 user 操作数,则 id 实用程序会将用户和组 ID 以及调用进程的相应用户和组名称写入标准输出。如果有效和实际 ID 不匹配,则会同时写入这两项。如果底层系统支持多个组,则 /usr/xpg4/bin/id 还会写入调用进程的补充组联合提供者。
如果提供了 user 操作数,并且进程具有适当的特权,则会写入选定用户的用户和组 ID。在这种情况下,系统会假定有效 ID 与实际 ID 相同。如果选定用户在组数据库中列出了多个允许的组成员关系,则 /usr/xpg4/bin/id 会按照上一段所述的写入补充组的方式写入这些组成员关系。
当 LC_MESSAGES 语言环境类别指定 "C" 语言环境时,会使用以下格式。在其他语言环境中,字符串 uid、gid、euid、egid 和 groups 可能会替换为最适用于相应语言环境的字符串。
"uid=%u(%s) gid=%u(%s)\n" <real user ID>, <user-name>, <real group ID>, <group-name>
如果有效和实际用户 ID 不匹配,则会在上述格式中的 \n 字符前面插入以下内容:
" euid=%u(%s)"
并在参数列表末尾添加以下参数:
<effective user ID>, <effective user-name>
如果有效和实际组 ID 不匹配,则会在格式字符串中的 \n 字符前面(以及因有效和实际用户 ID 不匹配而添加的任何内容后面)插入以下内容:
" egid=%u(%s)"
并在参数列表末尾添加以下参数:
<effectivegroup-ID>, <effectivegroupname>
如果进程具有补充组联合提供者,或者允许选定用户属于多个组,则会在格式字符串中的 NEWLINE 字符前面添加第一个组:
" groups=%u(%s)"
并在参数列表末尾添加以下参数:
<supplementary group ID>, <supplementary group name>
而对于任何其余补充组 ID,会在此内容后面添加所需数量的以下内容:
",%u(%s)"
并在参数列表末尾添加所需数量的以下参数:
<supplementary group ID>, <supplementary group name>
如果系统无法将用户 ID、组 ID、有效用户 ID、有效组 ID 或补充组/多个组 ID 中的任一项映射到可输出的用户名或组名称,则相应的格式字符串就会省略相应的 (%s) 和名称参数。
如果指定了任何选项,则输出格式如“选项”下所述。
/usr/bin/id 和 /usr/xpg4/bin/id 支持以下选项。如果与 –G、–g 或 –u 选项中的任一项一起指定,则 –p 和 –a 选项无效。
此外,还会报告调用进程的当前项目成员关系。项目采用以下格式报告:
"projid=%u(%s)"
此内容会插入到“格式”部分所述的缺省格式中的 \n 字符之前。参数
<project ID>,<project name>
会附加到参数列表的末尾。如果系统无法将项目 ID 映射到可输出的项目名称,则相应的格式字符串会省略相应的 (%s) 和名称参数。
报告用户名、用户 ID 和用户所属的所有组。
仅输出所有不同的组 ID(有效、实际和补充),采用 "%u\n" 格式。如果有多个不同的组联合提供者,则使用格式 " %u" 输出每个联合提供者,然后再输出 NEWLINE 字符。
仅输出有效组 ID,采用 "%u\n" 格式。
使用格式 "%s" 输出名称,而不是使用格式 "%u" 输出数字 ID。
输出实际 ID 而不输出有效 ID。
仅输出有效用户 ID,采用 "%u\n" 格式。
支持下列操作数:
要写入信息的用户(登录)名。
有关影响 id 执行的以下环境变量的描述,请参见 environ(5):LANG、LC_ALL、LC_CTYPE、LC_MESSAGES 和 NLSPATH。
将返回以下退出值:
成功完成。
出现错误。
有关下列属性的说明,请参见 attributes(5):
|
|
fold(1)、logname(1)、who(1)、getgid(2)、getgroups(2)、getprojid(2)、getuid(2)、attributes(5)、environ(5)、standards(5)
–G 选项生成的输出以及缺省情况下生成的输出可能会在支持大量补充组的系统上生成很长的行。