ID Użytkownika, ID Grupy, Linux

0

Do zrobienia mam zadanie tej treści:
Napisać funkcję, która odczytuje login zalogowany użytkownika na tej
podstawie wyświetla:
-nazwę użytkownika
-jego ID
-ID jego grupy
-pełną nazwę użytkownika lub aplikacji
-katalog domowy
-nazwę powłoki
Doszedłem do tego momentu i nie wiem co dalej, jak dodać katalog domowy i nazwę powłoki ? Będę wdzięczny za pomoc.

 #include <unistd.h>
#include <sys/types.h>
#include <stdio.h>
#include <pwd.h>
#include <grp.h>
#include <stdlib.h>

void print_group(gid_t group_id);

int main(int argc, char *argv[])
{
    uid_t user_id;
    gid_t group_id;

    struct passwd *user_entry;
    struct group *group_entry;

    int liczba_grup, licznik_grup, i;
    gid_t *groups;

    // pobierz ID uzytkownika
    user_id = getuid();

    // pobierz ID główenj grupy
    group_id = getgid();

    // pobierz nazwe uzytkownika
    user_entry = getpwuid(user_id);

    printf("uid=%u(%s) ", user_id, user_entry->pw_name);
    printf("gid=%u(%s) ", group_id, group_entry->gr_name);

return 0;
}
0

Zajrzyj do źródeł id

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0