Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > etcライブラリ > Etcモジュール
クラスの継承リスト: Etc
/etc に存在するデータベースから情報を得るためのモジュールです。 クラスにインクルードして使うこともできます。
endgrent -> nil
[permalink][rdoc]Etc.#getgrent によって開始された /etc/group ファイルを読む プロセスを終了させファイルを閉じます。
[SEE_ALSO] getgrent(3)
endpwent -> nil
[permalink][rdoc]Etc.#getpwent によって開始された /etc/passwdファイルを読む プロセスを終了させファイルを閉じます。
[SEE_ALSO] getpwent(3)
getgrent -> Struct::Group | nil
[permalink][rdoc]/etc/group ファイルから読み込んだエントリを一つ返します。
最初の呼び出しでは、先頭のエントリを返します。それ以降の呼び出しでは、 呼び出す度に次のエントリを順に返します。ファイルの終端に達すると nil を返します。
処理が終了したときは Etc.#endgrent を呼び出すようにしてください。
[SEE_ALSO] getgrent(3), Struct::Group
getgrgid(gid) -> Struct::Group
[permalink][rdoc]group データベースを検索し、グループ ID が gid であるグループエントリを返します。
[SEE_ALSO] getgrgid(3), Struct::Group
getgrnam(name) -> Struct::Group
[permalink][rdoc]name という名前のグループエントリを返します。
[SEE_ALSO] getgrnam(3), Struct::Group
getlogin -> String | nil
[permalink][rdoc]自分の login 名を返します。得られなかった場合は nil を返します。
getlogin は su(1) などでログイン時のユーザとは異なるユーザになっている場合、 現在ではなくログイン時のユーザを返します。
このメソッドが失敗した場合は Etc.#getpwuid に フォールバックするとよいでしょう。
たとえば、環境変数 USER などもあわせて、以下のようにフォールバックできます。
login_user = ENV['USER'] || ENV['LOGNAME'] || Etc.getlogin || Etc.getpwuid.name
getpwent -> Struct::Passwd | nil
[permalink][rdoc]/etc/passwd から読み込んだエントリを一つ返します。
最初の呼び出しでは、先頭のエントリを返します。それ以降の呼び出しでは、 呼び出す度に次のエントリを順に返します。ファイルの終端に達すると nil を返します。
処理が終了したときは Etc.#endpwent を呼び出すようにしてください。
[SEE_ALSO] getpwent(3)
getpwnam(name) -> Struct::Passwd
[permalink][rdoc]passwd データベースを検索し、 名前が name である passwd エントリを返します。
[SEE_ALSO] getpwnam(3), Struct::Passwd
getpwuid(uid = getuid) -> Struct::Passwd
[permalink][rdoc]passwd データベースを検索し、 ユーザ ID が uid である passwd エントリを返します。
[SEE_ALSO] getpwuid(3), Struct::Passwd
group -> Struct::Group | nil
[permalink][rdoc]/etc/group ファイルから読み込んだエントリを一つ返します。
最初の呼び出しでは、先頭のエントリを返します。それ以降の呼び出しでは、 呼び出す度に次のエントリを順に返します。ファイルの終端に達すると nil を返します。
[SEE_ALSO] Etc.#getgrent, getgrent(3)
group {|gr| ... } -> ()
[permalink][rdoc]全てのグループエントリを順にアクセスするためのイテレータです。
passwd -> Struct::Passwd | nil
[permalink][rdoc]/etc/passwd から読み込んだエントリを一つ返します。
最初の呼び出しでは、先頭のエントリを返します。それ以降の呼び出しでは、 呼び出す度に次のエントリを順に返します。ファイルの終端に達すると nil を返します。
[SEE_ALSO] Etc.#getpwent, getpwent(3)
passwd {|pw| ... } -> ()
[permalink][rdoc]全ての passwd エントリを順にアクセスするためのイテレータです。
setgrent -> nil
[permalink][rdoc]/etc/group の先頭に戻ります。
このメソッドを呼び出した後 Etc.#getgrent を呼び出すと先頭のエントリを返します。
[SEE_ALSO] getgrent(3)
setpwent -> nil
[permalink][rdoc]/etc/passwd の先頭に戻ります。
このメソッドを呼び出した後 Etc.#getpwent を呼び出すと先頭のエントリを返します。
[SEE_ALSO] getpwent(3)
sysconfdir -> String | nil
[permalink][rdoc]システムの設定ディレクトリを返します。
require 'etc' p Etc.sysconfdir # => "/etc"
主に "/etc" を返しますが、Ruby をソースからビルドした場合は異なるディレ クトリを返す場合があります。例えば、Ruby を /usr/local にインストールし た場合は、"/usr/local/etc" を返します。
systmpdir -> String | nil
[permalink][rdoc]システムのテンポラリディレクトリを返します。
require 'etc' p Etc.systmpdir # => "/tmp"