2013-03-01 65 views
0

File模块具有诸如File:file_info()和File:read_file_info之类的函数,该函数返回#file_info记录相对于文件。它包含的字段如uidgid数字标识符与OS用户标识和组标识相关。如何在erlang中通过uid获取用户名?

所有文件操作都使用数字uid和gid值,但考虑到主机上的uid可能与另一台主机不同,但用户名(字符串)很容易识别,但用户名可能是同样根据部门惯例(安装政策/等)。

问:是否有在大多数操作系统上工作以检索给定UID或GID的用户名和组名的模块或功能?

回答

2

对于符合POSIX标准的操作系统,C的功能是getpwuid。要获得组名,相当于getgrgid

Jungerl曾经有一个posix_drvdriver module,提供这两个,除其他事项。 但它已经很老了,并没有在R15中影响驱动程序API的变化中幸存下来。

另一种可能是这样的:https://github.com/sergey-miryanov/erlang-pwd - 给你一个get_by_uid(即调用getpwuid),但没有等效于getgrgid

+0

更多信息。谢谢。 – gextra 2013-03-02 12:55:09