LINUX.ORG.RU

с или с++ : получение имени пользователя.


0

0
Возникла задача. Нужно получить имя пользователя, под которым данная программа запущена. Пока вырисовывается парсинг переменных среды на предмет имени пользователя, но может есть способ лучше?
anonymous
Вроде разобрался. getenv("LOGNAME") работает. Попробую ещё getlogin_r. Спасибо, товарищи!
anonymous
()
А вообще на будущее есть чудесная команда apropos. Для твоего случая:

#apropos user | grep name

dont
()
А какое имя? Их несколько, однако...

getlogin не то, он просто вернет собственника контрольного терминала (если он есть).

Короче, сначала (в зависимости от постановки задачи)

getuid
или
geteuid
потом
getpwuid
Die-Hard ★★★★★
()
Ответ на: комментарий от anonymous
>printf(cuserid(0));

Лучше указать спецификатор вывода явно: "%s", ну и символ новой строки заодно..

php-coder ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.