列出Linux / * nix上的所有真实用户以及与之相关的数据

你好,我想列举在Linux / * nix上的所有真正的用户和它的数据。 我可能需要parsing/etc/passwd/etc/shadow并检查用户是否有密码。

问题是不是跨平台的(在* BSD上没有/etc/shadow )。 有没有可以使用的跨平台库/命令?

请参阅getpwent的手册页。

  The getpwent() function returns a pointer to a structure containing the broken-out fields of a record from the password database (eg, the local password file /etc/passwd, NIS, and LDAP). 

我会补充说,如果你想检查密码,看看getspent,getspnam列出影子密码文件。 手册页说,getspent等功能可能不是跨平台的。