id是一个命令行实用程序,可打印真实有效的用户和组ID。以下为你讲解Linux操作系统下使用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。
更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2014-11/109403p2.htm
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命令将显示有关给定用户或当前登录用户的信息。
本文永久更新链接地址:http://www.linuxidc.com/Linux/2014-11/109403.htm