Font
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]1268[/thread]

Home - Verzeichnisse: Namenskonventionen?

Reader: 1


<< |< 1 2 >| >> 11 entries, 2 pages
pktm
 2005-08-11 17:54
#11697 #11697
User since
2003-08-07
2921 articles
BenutzerIn
[Homepage]
user image
Hallo!

Ich habe in einem der anderen Themen aufgeschnappt, dass das Home-Verzeicnis von Linux-Benutzern $ENV{HOME} ist.
Bei mir unter XP ist es in der Variable $ENV{'USERPROFILE'} abgelegt.
Ist das immer anders?
Gibt es eine Möglichkeit das irgendwie über eine generalisierte API zanzusprechen?
Sost muss ich ja für jedes OS auf die entsprechende Umgebungsvariable umstellen, was bei cross-over-Programmierung ziemlich umständlich ist.

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )
ptk
 2005-08-11 18:54
#11698 #11698
User since
2003-11-28
3645 articles
ModeratorIn
[default_avatar]
Mach doch einfach eine Funktion:
Code: (dl )
1
2
3
4
5
6
7
sub get_home_dir {
if ($^O eq 'MSWin32') {
$ENV{USERPROFILE};
} else {
$ENV{HOME}; # wobei es sicherer ist, getpwuid zu verwenden!
}
}
pktm
 2005-08-11 19:49
#11699 #11699
User since
2003-08-07
2921 articles
BenutzerIn
[Homepage]
user image
Und das geht auch bei MACs?
http://www.intergastro-service.de (mein erstes CMS :) )
GwenDragon
 2005-08-11 21:18
#11700 #11700
User since
2005-01-17
14741 articles
Admin1
[Homepage]
user image
Du solltest unter Windows auch %HOMEDRIVE%%HOMEPATH% testen!

Bei mir liegt nämlich mein Verzeichnis dort.
Dummerweise (WIndows hat eigene Vorstellungen vom Userverzeichnis) kann aber nicht alles dort hinverlegt werden!\n\n

<!--EDIT|GwenDragon|1123780794-->
Ronnie
 2005-08-11 21:24
#11701 #11701
User since
2003-08-14
2022 articles
BenutzerIn
[default_avatar]
[quote=pktm,11.08.2005, 17:49]Und das geht auch bei MACs?[/quote]
Ja, Mac OS X ist ein waschechtes Unix, also geht das.
ptk
 2005-08-11 21:53
#11702 #11702
User since
2003-11-28
3645 articles
ModeratorIn
[default_avatar]
Windows: Ich habe noch Code gefunden, bei dem das Homeverzeichnis von einem Domainserver geholt wird.
Code: (dl )
1
2
3
4
    Win32API::Net::UserGetInfo($server, Win32::LoginName(), 2, $userinfo);
if ($userinfo) {
return $userinfo->{homeDir};
}

Evtl. kann man auch auf die Environmentvariablen HOMESHARE und HOME pruefen.
J-jayz-Z
 2005-08-21 14:36
#11703 #11703
User since
2005-04-13
625 articles
BenutzerIn
[Homepage] [default_avatar]
Das
Code: (dl )
1
2
3
4
5
6
7
sub get_home_dir {
if ($^O eq 'MSWin32') {
$ENV{USERPROFILE};
} else {
$ENV{HOME}; # wobei es sicherer ist, getpwuid zu verwenden!
}
}

geht IMHO auch kürzer:
Code: (dl )
$^O eq 'MSWin32' ? $ENV{USERPROFILE} : $ENV{HOME};


EDIT:

btw.: pktm fragte, ob es auch bei MAC`s geht, allerdings ist MAC OS X ein Unix, aber die anderen IMHO nicht...\n\n

<!--EDIT|J-jayz-Z|1124621003-->
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de
Ronnie
 2005-08-21 15:05
#11704 #11704
User since
2003-08-14
2022 articles
BenutzerIn
[default_avatar]
[quote=J-jayz-Z,21.08.2005, 12:36]btw.: pktm fragte, ob es auch bei MAC`s geht, allerdings ist MAC OS X ein Unix, aber die anderen IMHO nicht...[/quote]
Auf Mac OS X hatte ich schon hingewiesen. Mac OS 9 und älter beinhalten kein perl, sondern man muss MacPerl installieren, das wohl an einigen Stellen vom normalen Perl abweicht - aber mittlerweile kann Mac OS X wohl als normal-zustand betrachtet werden.
J-jayz-Z
 2005-08-21 15:17
#11705 #11705
User since
2005-04-13
625 articles
BenutzerIn
[Homepage] [default_avatar]
Wie sieht es den mit dem neuen Mac aus? Dieses Tiger war es glaub ich. Ist das auch ein Unix?
perl -Mstrict -Mwarnings -e 'package blub; sub new { bless {} } sub bar {my $self=shift; $self->{bla}="5065726c2d436f6d6d756e697479"; return $self->{bla};} my $foo=blub->new();print "Hallo ";print pack("H*",$foo->bar()); print "\n"'

http://perl-tutor.de
Ronnie
 2005-08-21 15:33
#11706 #11706
User since
2003-08-14
2022 articles
BenutzerIn
[default_avatar]
is' es. Tiger ist nur ein Name für Mac OS X 10.4
<< |< 1 2 >| >> 11 entries, 2 pages



View all threads created 2005-08-11 17:54.