类 Etc::Passwd
Passwd
是 Unix 系统上用户数据库的占位符结构。
该结构包含以下成员¶ ↑
- name
-
包含用户的简短登录名,类型为字符串。
- passwd
-
包含用户的加密密码,类型为字符串。如果使用影子密码,则返回
'x'
。如果用户无法使用密码登录,则返回'*'
。 - uid
-
包含用户的整数用户 ID (uid)。
- gid
-
包含用户主组的整数组 ID (gid)。
- dir
-
包含用户主目录的路径,类型为字符串。
- shell
-
包含用户登录 shell 的路径,类型为字符串。
以下成员是系统相关的¶ ↑
- gecos
-
包含用户更长的字符串描述,例如全名。某些 Unix 系统在 gecos 字段中提供结构化信息,但这是系统相关的。
- change
-
密码更改时间(整数)。
- quota
-
配额值(整数)。
- age
-
密码有效期(整数)。
- class
-
用户访问类(字符串)。
- comment
-
注释(字符串)。
- expire
-
帐户到期时间(整数)。
公共类方法
Etc::Passwd.each { |struct| block } → Etc::Passwd 点击切换源码
Etc::Passwd.each → Enumerator
如果给定代码块,则遍历 /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}
static VALUE etc_each_passwd(VALUE obj) { #ifdef HAVE_GETPWENT RETURN_ENUMERATOR(obj, 0, 0); each_passwd(); #endif return obj; }