hallo leute,
wer kann sich einen reim auf folgendes problem machen:
nach meinem update von suse 9.0 auf suse 9.1 liefert mir das script
01 #!/usr/bin/perl -w
02 $s_ = getlogin;
03 print $s_;
ein "use of uninitialized value ..." in Zeile 3, aber auch nur unter kde (3.2.1). die textkonsole ohne x liefert wie gewünscht den usernamen.
gruß, t-rex
User since
2003-08-04
2145
Artikel
ModeratorIn + EditorIn
Das heisst einfach, dass die benutzte Shell keine Login-Shell ist.
Die Dokumentation zu getlogin() zeigt Abhilfe:
[quote= ,perldoc -f getlogin]
getlogin
Implements the C library function of the same name, which on most systems returns the
current login from /etc/utmp, if any. If null, use "getpwuid".
$login = getlogin || getpwuid($<) || "Kilroy";
Do not consider "getlogin" for authentication: it is not as secure as "getpwuid".
[/quote]
User since
2004-06-30
5
Artikel
BenutzerIn
ja, super. danke.
ich war zu sehr auf das update der suse-version fixiert. warum die x-konsole plötzlich nicht mehr als login-shell genutzt werden kann, ist mir zwar immer noch nicht klar, aber getpwuid($<) funzt jetzt und das reicht mir.
gruß, t-rex