becko Asked: 2015-07-07 12:02:50 +0800 CST2015-07-07 12:02:50 +0800 CST 2015-07-07 12:02:50 +0800 CST 列出所有用户及其 UID 的命令? 772 如何列出所有用户及其 UID?我想从终端执行此操作。 command-line 5 个回答 Voted Best Answer A.B. 2015-07-07T12:21:39+08:002015-07-07T12:21:39+08:00 列出具有/home文件夹的所有用户: awk -F: '/\/home/ {printf "%s:%s\n",$1,$3}' /etc/passwd 或所有用户UID >= 1000: awk -F: '($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd 组合 awk -F: '/\/home/ && ($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd 或所有条目 awk -F: '{printf "%s:%s\n",$1,$3}' /etc/passwd 更多信息在这里 heemayl 2015-07-07T12:26:25+08:002015-07-07T12:26:25+08:00 您只需使用即可轻松找到它cut: cut -d: -f1,3 /etc/passwd -d:设置分隔符:为cut -f1,3:从/etc/passwd文件中提取仅由分隔的字段 1 和 3 检查man cut以获得更多想法。 例子 : $ cut -d: -f1,3 /etc/passwd root:0 daemon:1 bin:2 sys:3 sync:4 games:5 ...... 如果您已ldap配置,将ldap用户包含在输出中: getent passwd | cut -d: -f1,3 Boschko 2019-10-17T15:56:27+08:002019-10-17T15:56:27+08:00 或者列出所有用户,包括 UID 和 GID 信息。 for user in $(cat /etc/passwd | cut -f1 -d":"); do id $user; done 干杯, Mr_Macc 2016-05-14T07:04:44+08:002016-05-14T07:04:44+08:00 因为您正在尝试列出 UID 和用户名,所以下面的命令在 Solaris 上效果最好。他们有两个awk awk -F: '($3 >=1000) {printf "%s:%s",$1,$3}' /etc/passwd MitchellK 2016-07-25T00:24:46+08:002016-07-25T00:24:46+08:00 我发现最简单的方法是在您的服务器上安装 webmin,只需转到“系统”>“用户和组”,您就会看到一个格式良好的列表,其中包含所有用户名和组及其 uid、主目录等。
列出具有
/home
文件夹的所有用户:或所有用户
UID >= 1000
:组合
或所有条目
更多信息在这里
您只需使用即可轻松找到它
cut
:-d:
设置分隔符:
为cut
-f1,3
:
从/etc/passwd
文件中提取仅由分隔的字段 1 和 3检查
man cut
以获得更多想法。例子 :
如果您已
ldap
配置,将ldap
用户包含在输出中:或者列出所有用户,包括 UID 和 GID 信息。
干杯,
因为您正在尝试列出 UID 和用户名,所以下面的命令在 Solaris 上效果最好。他们有两个awk
awk -F: '($3 >=1000) {printf "%s:%s",$1,$3}' /etc/passwd
我发现最简单的方法是在您的服务器上安装 webmin,只需转到“系统”>“用户和组”,您就会看到一个格式良好的列表,其中包含所有用户名和组及其 uid、主目录等。