id是一个命令行实用程序,可打印真实有效的用户和组ID。以下为你讲解Linux操作系统下使用Id命令的方法,包括Id命令选项示例。
使用id命令 id命令的语法如下: id [OPTIONS] [USERNAME] 如果省略用户名,则id命令显示有关当前登录用户的信息。 在不带任何选项的情况下调用id时,将打印真实用户ID(uid),用户的真实主要组ID(gid)和用户所属的补充组(groups)的真实ID,仅当有效用户ID、组ID和补充组ID与实际用户ID不同时,才打印它们。 $ id uid=1000(ywnz) gid=1000(ywnz) groups=1000(ywnz),4(adm),27(sudo),998(docker) 如果启用了SELinux,则id还将显示用户的安全上下文(context): uid=1000(ywnz) gid=1000(ywnz) groups=1000(ywnz) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 要获取有关另一个用户的信息,请将用户名或用户标识作为参数传递给id命令: $ id mark uid=1001(mark) gid=1001(mark) groups=1001(mark),998(docker) 如果系统上存在名称与提供的ID相同的用户,则优先使用名称查找,使用用户ID作为参数时,请在ID前面加上+符号,以避免将ID解释为名称。 例如,如果有一个名称为1010的用户和另一个ID为1010的用户,则如果键入id 1010,该命令将显示有关名称为1010的用户的信息,要获取有关ID为1010的用户的信息,请键入id +1010。
id命令选项 id命令接受几个选项,这些选项仅允许显示特定信息,在shell脚本中使用id时,这很有用。 要仅打印有效的用户标识,请使用-u(--user)选项: $ id -u 1000 -g(--group)选项使id仅打印有效的组ID: $ id -g 1000 4 27 998 使用-G(--groups)选项可打印用户所属的所有组的有效ID: $ id -G 1000 要打印名称而不是数字,请使用-n、--name选项,该选项只能与-u、-g和-G结合使用。 $ id -un ywnz 使用-un选项运行id命令将产生与运行whoami相同的输出,并且id -Gn的输出等同于groups命令的输出,参考groups命令_Linux groups命令使用详解:用来打印指定用户所属的工作组。 -r,(--real)选项可以与-u、-g和-G结合使用以打印实数,而不是有效值: $ id -ur 要仅打印流程的安全上下文(通常是用户的安全上下文),请使用-Z(--context)选项: $ id -Z unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 如果SELinux被禁用,则id显示一条错误消息: id: --context (-Z) works only on an SELinux-enabled kernel -z(--zero)选项使id用NUL字符而不是空格来分隔输出项: $ id -znG ywnzadmsudodocker 当将输出传递给可以解析换行符的命令时,这很有用。
结语 以上就是Id的使用方法,及命令选项示例。如果未提供用户名或ID作为参数,则id命令将显示有关给定用户或当前登录用户的信息。
相关主题 |