class Etc::Passwd
Passwd 是 Unix 系统上用户数据库的占位符 Struct。
该结构体包含以下成员¶ ↑
- name
-
包含用户的简短登录名,类型为
String。 - passwd
-
包含用户加密的密码,类型为
String。如果正在使用影子密码,则返回'x'。如果用户无法使用密码登录,则返回'*'。 - uid
-
包含用户的整数用户 ID (uid)。
- gid
-
包含用户主组的整数组 ID (gid)。
- dir
-
包含用户主目录的路径,类型为
String。 - shell
-
包含用户登录 shell 的路径,类型为
String。
以下成员是系统相关的¶ ↑
- gecos
-
包含对用户的更长
String描述,例如全名。某些 Unix 系统在 gecos 字段中提供结构化信息,但这取决于系统。 - change
-
密码更改时间(整数)。
- quota
-
配额值(整数)。
- age
-
密码有效期(整数)。
- class
-
用户访问类(字符串)。
- comment
-
注释(字符串)。
- expire
-
帐户过期时间(整数)。
公共类方法
源代码
static VALUE
etc_each_passwd(VALUE obj)
{
#ifdef HAVE_GETPWENT
RETURN_ENUMERATOR(obj, 0, 0);
each_passwd();
#endif
return obj;
}
如果给定了代码块,则遍历 /etc/passwd 文件中的每个条目。
如果没有给定代码块,则返回 Enumerator。
代码块传递一个 Passwd 结构体。
有关详细信息,请参见上面的 Etc.getpwent。
示例
require 'etc' Etc::Passwd.each {|u| puts u.name + " = " + u.gecos } Etc::Passwd.collect {|u| u.gecos} Etc::Passwd.collect {|u| u.gecos}