p5-15.c

来自「UNIX程序设计教程」· C语言 代码 · 共 42 行

C
42
字号
#include <grp.h>#include <pwd.h>#include <sys/types.h>#include <unistd.h>#include <stdlib.h>int main(void){    uid_t me;    struct passwd  *my_passwd;    struct group   *my_group;    char           **members;    me = getuid();              /* 获得用户ID (§6.11)*/    my_passwd = getpwuid(me);   /* 获得用户信息 */    if (!my_passwd) {        printf ("Couldn't find out about user %d.\n", (int) me);        exit(EXIT_FAILURE);    }    /* 打印用户信息 */    printf ("I am %s.\n", my_passwd->pw_gecos);    printf ("My login name is %s.\n", my_passwd->pw_name);    printf ("My uid is %d.\n", (int) (my_passwd->pw_uid));    printf ("My home directory is %s.\n", my_passwd->pw_dir);    printf ("My default shell is %s.\n", my_passwd->pw_shell);    /* 获得缺省组ID信息 */    my_group = getgrgid (my_passwd->pw_gid);    if (!my_group) {        printf ("Couldn't find out about group %d.\n",                   (int) my_passwd->pw_gid);        exit (EXIT_FAILURE);    }    /* 打印组信息 */    printf("My default group is %s (%d).\n",               my_group->gr_name, (int) (my_passwd->pw_gid));    printf("The members of this group are:\n");    members = my_group->gr_mem;    while(*members){        printf("  %s\n", *(members));        members++;    }    return EXIT_SUCCESS;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?