tags:

views:

1949

answers:

1

What's a good way to find the uid/gid for a given username or groupname using Python? I need to set file ownership with os.chown and need the integer ids instead of the alphabetic.

[Quick note]: getpwnam works great but is not available on windows, so here's some code that creates stubs to allow you to run the same code on windows and unix.

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
+8  A: 

Use the pwd and grp modules:

from pwd import getpwnam  

print getpwnam('someuser')[2]
dfa
Excellent, thanks. I'd missed the pwd module somehow.
Parand
You're welcome! :) (bookmark this: http://pydoc.org/)
dfa