Benutzernamen unter Linux herausfinden
-
hallo,
unter windows kann ich ja den benutzernamen des aktuellen benutzers über windows.h usw. herausfinden.
aber wie geht das unter linux?
-
Dieser Thread wurde von Moderator/in SeppJ aus dem Forum C (C89, C99 und C11) in das Forum Linux/Unix verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
edit: Schalt doch dein verrostetes Hirn ein. Korrekte Antwort wegeditiert.
-
-
knivil schrieb:
ganz tolle antwort
mensch leute, der moderator, der hier threads verschiebt, muss doch wenigstens vorher mal sein verrostetes hirn einschalten.
es geht mir hier darum, mittels funktionen den benutzernamen zu bestimmen, NICHT ÜBER DIE KOMMANDOZEILE.
-
hight five schrieb:
mensch leute, der moderator, der hier threads verschiebt, muss doch wenigstens vorher mal sein verrostetes hirn einschalten.
es geht mir hier darum, mittels funktionen den benutzernamen zu bestimmen, NICHT ÜBER DIE KOMMANDOZEILE.
Danke. Darum geht es nämlich in diesem Forum.
Ich editier mal meine (richtige) Antwort oben weg.
-
und wo ist dann das Problem - wir reden von Linux und da brauch ich mir doch
nur den QUelltext von whoami runterladen und nachschauen, wie es gemacht wird.
-
hight five schrieb:
knivil schrieb:
ganz tolle antwort
dann benutze popen ... Es gibt nicht nur einen Weg.
-
getlogin()
-
Hi,
damit könnte es funktionieren:std::string Glib::get_user_name () std::string Glib::get_real_name ()
Referenz: https://developer.gnome.org/glibmm/stable/group__MiscUtils.html
Grüße.
-
Das geht dann aber nur wenn er auch GNOME benutzt. Eleganter wäre wohl der Weg
über die über die UID mit getuid(). Siehe dazu "man getuid" in deinem Terminal.Ansonsten wäre es auch möglich die environment-variable "USER" zu holen,
normalerweise wird dort beim Login der Benutzername eingetragen.EDIT: gerade gesehen, die gleiche Antwort existiert schon im Netz, siehe hier
letzter Beitrag: http://www.unix.com/programming/21041-getting-username-c-program-unix.html