GNU/Linux >> Belajar Linux >  >> Linux

dapatkan id grup dengan nama grup (Python, Unix)

Jika Anda membaca dokumentasi modul grp, Anda akan melihat bahwa grp.getgrnam(groupname) akan mengembalikan satu entri dari database grup, yang merupakan objek mirip tuple. Anda dapat mengakses informasi berdasarkan indeks atau atribut:

>>> import grp
>>> groupinfo = grp.getgrnam('root')
>>> print groupinfo[2]
0
>>> print groupinfo.gr_gid
0

Entri lainnya adalah nama, kata sandi terenkripsi (biasanya kosong, jika menggunakan file bayangan, itu akan menjadi nilai dummy) dan semua nama anggota grup. Ini berfungsi dengan baik pada sistem Unix apa pun, termasuk laptop Mac OS X saya:

>>> import grp
>>> admin = grp.getgrnam('admin')
>>> admin
('admin', '*', 80, ['root', 'admin', 'mj'])
>>> admin.gr_name
'admin'
>>> admin.gr_gid
80
>>> admin.gr_mem
['root', 'admin', 'mj']

Modul ini juga menawarkan metode untuk mendapatkan entri dengan gid, dan seperti yang Anda temukan, metode untuk mengulangi semua entri dalam database:

>>> grp.getgrgid(80)
('admin', '*', 80, ['root', 'admin', 'mj'])
>>> len(grp.getgrall())
73

Last but not least, python menawarkan fungsionalitas serupa untuk mendapatkan informasi tentang kata sandi dan file bayangan, dalam modul pwd dan spwd, yang memiliki API serupa.


Lihat grp.getgrnam(name) :

grp.getgrnam(name)

Kembalikan entri basis data grup untuk nama grup yang diberikan. KeyError dimunculkan jika entri yang diminta tidak dapat ditemukan.

Entri basis data grup dilaporkan sebagai objek seperti tuple, yang atributnya sesuai dengan anggota struktur grup:

Index   Attribute   Meaning

0   gr_name     the name of the group
1   gr_passwd   the (encrypted) group password; often empty
2   gr_gid  the numerical group ID
3   gr_mem  all the group member’s user names

ID grup numerik ada di indeks 2, atau ke-2 dari terakhir, atau atribut gr_gid .

GID dari root adalah 0:

>>> grp.getgrnam('root')
('root', 'x', 0, ['root'])
>>> grp.getgrnam('root')[-2]
0
>>> grp.getgrnam('root').gr_gid
0
>>>

Linux
  1. Daftar anggota grup di Linux

  2. Skrip python untuk membuat daftar pengguna dan grup

  3. Dapatkan delta mouse menggunakan Python! (di Linux)

  1. Python:Cara mendapatkan id grup dari satu nama pengguna (seperti id -Gn )

  2. Bagaimana cara mendapatkan PYTHONPATH di shell?

  3. Bagaimana cara mendapatkan ps untuk mencetak grup?

  1. Dapatkan total memori fisik dengan Python

  2. Bagaimana cara mendapatkan PID dengan nama proses?

  3. Bagaimana cara menghapus atau menghapus fungsi bash?