getuid()和getlogin()
原型
#include<unistd.h>
uid_t getuid(void);
char *login(void);
参数
void
返回值
getuid()返回程序关联的UID;
getlogin()返回当前用户登录名。
getpwuid()和getpwnam()
原型
#include<pwd.h>
struct passwd *getpwuid(uid_t uid);
struct passwd *getpwnam(const char *name);
参数
getpwuid: uid;
getpwname: 登录名
返回值
成功时, 返回指向passwd结构的指针;
失败时, 返回空指针,并设置errno.
passwd结构
passwd结构 | 说明 |
---|---|
char *pw_name | 用户登录名 |
uid_t pw_uid | UID |
gid_t pw_gid | GID |
char *pw_dir | 用户家目录(home directory) |
char *pw_gecos | 注释字段 |
char *pw_shell | 用户默认shell |