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}