2009-05-05 8 views
58

Python kullanarak belirli bir kullanıcı adı veya grup adı için kullanıcı kimliğini/gidişi bulmanın iyi bir yolu nedir? Dosya sahipliğini os.chown ile ayarlamalı ve alfabetik yerine tamsayı kimliğine ihtiyacım var.Python: belirli bir kullanıcı adı/groupname için uid/gid bulma (os.chown için)

[Hızlı not]: getpwnam harika çalışıyor, ancak windows'ta mevcut değil, bu nedenle windows ve unix'te aynı kodu çalıştırmanıza izin veren kodlar oluşturan bazı kodlar.

try: 
    from pwd import getpwnam 
except: 
    getpwnam = lambda x: (0,0,0) 
    os.chown = lambda x, y, z: True 
    os.chmod = lambda x, y: True 
    os.fchown = os.chown 
    os.fchmod = os.chmod 
+0

olası yinelenen http://stackoverflow.com/questions/421618/python-script-to -list-users-and-groups) – chown

cevap

88

pwd ve grp modüllerini kullanın:

from pwd import getpwnam 

print getpwnam('someuser')[2] 
# or 
print getpwnam('someuser').pw_uid 
([kullanıcı ve grupları listelemek için Python komut] arasında
+0

Mükemmel, teşekkürler. Bir şekilde pwd modülünü özledim. – Parand

İlgili konular