-
Environment Variable $HOME !
Gruss
Robert
-
Wie komm ich da, in C, ran ?
-
...mit der Funktion [b]getenv[b]...
Thomas
-
Danke, es klappt.
Ist ein wenig einfacher als der Weg den ich gefunden habe ...
MfG Ing0s
-
Home Verzeichnis ermitteln ...
Hi alle zusammen !!
Ich müßte im Homeverzeichnis des Users, der mein prog ausführt, eine Datei anlegen.
Ich hole mir mit "getlogin" den Name und suche in der passwd das Homeverzeichnis raus.
Gibt es eine einfachere möglichkeit ?
MfG Ing0s
-
export HOME="nigendwo" und schon geht es nicht mehr ...
Das ist besser als $HOME:
#include <stdio.h>
#include <pwd.h>
#include <unistd.h>
#include <sys/types.h>
int main(){
char a[1000];
printf("%i\n",getpw(getuid(),a));
printf("%s\n",a);
return(0);
}
hat mir ein Freund gezeigt.
MfG Ing0s
-
$HOME sollte immer richtig gesetzt sein, wenn das nicht der Fall ist, stimmt was am System nicht!
Robert
-
$HOME ist nicht immer richtig gesetzt!!
es gibt ein tool "su1", das ermoeglicht bei entsprechender configuration
rootbefehle einem xbeliebigen user zugaenglich zu machen.
rufe ich: >su1 bash
dann bin ich zwar root, aber $HOME=crazy!
anderseits denke ich, mann sollte HOME aendern duerfen.
ich hatte mal in einer firma einen recht faulen administrator
da musste ich mir ein homeverzeichnis mit jemand anderem teilen.
jeder von uns hat dann seine HOME-variable aus ein entsprechendes unterverzeichnis gesetzt. deswegen sollte trotzdem noch alles funktionieren.( und hat es auch.)
-
// laut manpage und linker ist getpw gefaehrlich, es sollte getpwuid
// oder getpwnam verwendet werden
#include <stdio.h>
#include <unistd.h>
#include <pwd.h>
int main()
{
printf("%s\n",getpwuid( getuid())->pw_name);
return(0);
}
-
Wow, was für eine Resonanz !!
Danke, jetzt habe ich ja ein paar lösungen ...
MfG Ing0s
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen