# `grp` --- グループデータベース

このモジュールでは Unix グループ (group) データベースへのアクセス機構を提供します。全ての Unix バージョンで利用可能です。

Availability: Unix, not WASI, not Android, not iOS.

このモジュールはグループデータベースのエントリをタプルに似たオブジェクトとして報告されます。このオブジェクトの属性は `group` 構造体の各メンバ (以下の属性フィールド、`<grp.h>` を参照) に対応します:

インデックス | 属性 | 意味
--- | --- | ---
0 | gr_name | グループ名
1 | gr_passwd | (暗号化された) グループパスワード; しばしば空文字列になります
2 | gr_gid | 数字のグループ ID
3 | gr_mem | グループメンバの全てのユーザ名

gid は整数、名前およびパスワードは文字列、そしてメンバリストは文字列からなるリストです。 (ほとんどのユーザは、パスワードデータベースで自分が入れられているグループのメンバとしてグループデータベース内では明示的に列挙されていないので注意してください。完全なメンバ情報を取得するには両方のデータベースを調べてください。また、 `+` や `-` で始まる `gr_name` は YP/NIS 参照である可能性があり、 `getgrnam()` や `getgrgid()` でアクセスできないかもしれないことにも注意してください。)

このモジュールでは以下の内容を定義しています:

grp.getgrgid(id)

  与えられたグループ ID に対するグループデータベースエントリを返します。要求したエントリが見つからなかった場合、 `KeyError` が送出されます。

  バージョン 3.10 で変更: 浮動小数点数や文字列のような、整数でない引数には `TypeError` が送出されます。

grp.getgrnam(name)

  与えられたグループ名に対するグループデータベースエントリを返します。要求したエントリが見つからなかった場合、 `KeyError` が送出されます。

grp.getgrall()

  全ての入手可能なグループエントリを返します。順番は決まっていません。

参考

`pwd` モジュール

  このモジュールと類似の、ユーザデータベースへのインターフェース。