我忘记了在 Solaris 10 上创建的用户,所以现在我想列出我的服务器上的所有用户名。
可以吗(我是root用户)?如果可能的话我应该使用什么命令?
我在网上读到的某个地方getent
会列出一个组的所有用户名。我努力了获取没有组,因为我也不记得组,但收到错误消息(获取数据库用法..)
답변1
getent passwd
将列出所有已知用户,而不仅仅是本地/etc/passwd
文件中存在的用户。
답변2
有什么原因导致您无法使用 passwd 数据库吗?
awk -F':' '{ print $1 }' /etc/passwd
从组的角度来看,用户通常在 /etc/group 数据库中列为组的一部分:
Plugdev:x:46:某个用户名
답변3
您可以使用该dispuid
命令。从man
页面:
NAME
dispuid - displays a list of all valid user names
DESCRIPTION
dispuid displays a list of all user names on the system (one
line per name).
답변4
awk -F':' '{ print $1 , $2 }' /etc/shadow | egrep -v "NP|LK"
将从影子文件中打印未锁定或没有密码的帐户 - 所以其余的都是设置了密码的活动帐户 - 我想这就是您想要的?