/etc
ディレクトリ以下の情報を得るためのモジュール。クラスにインクルード
して使うこともできる。
require "etc.so" p Etc.getlogin
Etc.getlogin
自分のlogin名を返す。これが失敗した場合はEtc.getpwuidを用いると 良い。
Etc.getpwnam(name)
/etc/passwd
ファイル(あるいはDBMファイルやNISデータベース)を検
索し、nameの名前を持つpasswdエントリを返す。戻り値はpasswd構造
体で以下のメンバを持つ。
struct passwd name # ユーザ名(文字列) passwd # パスワード(文字列) uid # ユーザID(整数) gid # グループID(整数) gecos # gecosフィールド(文字列) dir # ホームディレクトリ(文字列) shell # ログインシェル(文字列) # 以降のメンバはシステムによっては提供されない。 change # パスワード変更時間(整数) quota # クォータ(整数) age # エージ(整数) class # ユーザアクセスクラス(文字列) comment # コメント(文字列) expire # アカウント有効期限(整数) end
詳細はgetpwnam(3)を参照のこと。
Etc.getpwuid([uid])
uidをユーザIDとするpasswdエントリを返す。戻り値は Etc.getpwnamと同様である。引数を省略した場合には getuid(2)の値を用いる。詳細は getpwuid(3) を参照のこと。
Etc.getgrgid(gid)
/etc/group
ファイル(あるいは…Etc.getpwnam参照)を検索し、
gidをグループIDとするグループエントリを返す。戻り値はgroup構
造体で以下のメンバを持つ。
struct group name # グループ名(文字列) passwd # グループのパスワード(文字列) gid # グループID(整数) mem # グループメンバ名の配列 end
詳細はgetgrgid(3)を参照のこと。
Etc.getgrnam(name)
nameという名前のグループエントリを返す。戻り値は Etc.getgrgidと同様である。詳細はgetgrnam(3) を参照。
Etc.group
全てのグループエントリを順にアクセスするためのイテレータ。
Etc.passwd
全てのpasswdエントリを順にアクセスするためのイテレータ。