简体   繁体   中英

How can I get an account ID from a username on Mac OS X?

I'm using MacFUSE to create a cool filesystem. I'd like to set the NSFileOwnerAccountID and NSFileGroupOwnerAccountID attributes for the files on it, but the underlying framework I use only gives me user names.

How can I get an account ID from an account name under Mac OS X using Cocoa or other built-in frameworks?

What you could do is get a list of all the CSIdentity objects and build a "username to identity" map. Once you have the identity object, you can get a bunch of other information from it.

More info:

These are just UID and GID numbers. Try the getpwnam (for user) and getgrnam (for group) functions; each returns a structure that contains the ID number, among other things.

Alternatively, just use NSFileOwnerAccountName and NSFileGroupOwnerAccountName instead of the …AccountID versions.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM