查找文件的所有者和组(作为字符串)

Rad*_*adu 5 c linux

我正在尝试获取文件的所有者和组的C字符串,在我执行之后,stat()我获取用户ID和组ID,但如何获取名称?

miz*_*izo 6

您可以使用getgrgid()获取组名称并getpwuid()获取用户名:

#include <pwd.h>
#include <grp.h>

/* ... */

struct group *grp;
struct passwd *pwd;

grp = getgrgid(gid);
printf("group: %s\n", grp->gr_name);

pwd = getpwuid(uid);
printf("username: %s\n", pwd->pw_name);
Run Code Online (Sandbox Code Playgroud)