#1 楼
有两种方法:使用id命令可以获得真实有效的用户和组ID。
id -u <username>
如果没有为
id
提供用户名,它将默认为当前用户。使用环境变量。
echo $UID
评论
GID呢?
– kangear
2015年10月29日,1:11
@kangear id -g <用户名>
–itsazzad
15年12月18日在15:23
值得注意的是,由于在将变量传递给命令之前已对它们进行了解析,因此我们将sudo echo $ {UID}打印出1000(或任何sudoer用户的UID是),而sudo id -u打印出0。
– AnthonyD973
18/12/19在20:33
用户名是可选的,默认为您自己。也许用方括号代替尖括号会更好。
–mwfearnley
19年5月13日在15:44
该答案的第二部分是错误的。所讨论的变量显然不是环境变量。这是一个shell变量。巨大差距。例如,您可以在Bash中通过echo $ UID vs env | grep ^ UID看到它。特别是这意味着第一种方法更健壮,第二种仅在shell脚本中有效,而不是在Python之类的系统中起作用(python -c'import os; print(os.environ)'可以查看环境)。
– 0xC0000022L
20/12/16在15:39
#2 楼
只需尝试id
,这将返回您的用户ID,组ID和所有组。
评论
或id -u仅查看UID
–钢驾驶员
2014年5月17日13:21
是的如果您需要避免解析输出,请首选Jobin的答案。
–TAq
14年5月17日在13:25
使用id -u和id -g非常容易。谢谢。 :)
–thoroc
17年8月3日17:00
#3 楼
也尝试:getent passwd username
这将显示用户ID,组ID和主目录。
或:
grep username /etc/passwd
评论
为什么根据问题,在echo $ UID和id -u是简单而准确的同时尝试使用long或替代命令?
–潘迪亚
2014年5月17日13:37
没错,但是知道所有选择很高兴
–nux
2014年5月17日13:38
#4 楼
您可以使用id
命令。联机帮助页
评论
使用echo $ UID?