Robert Allerstorfer: Zwischen Windows und Unix unterscheiden

Hi,

ich möchte einem Perl-script unterscheiden lassen, ob es auf Windos oder Unix läuft und habe hierfür folgendes konstrukt geschaffen:

my $returncode = system("cd");
if ($returncode == 0) {
   print "Ich laufe auf Windows";
} else {
   print "Ich laufe auf Unix";
}

Das funktioniert auch, nur beim FrontPage server auf windows nicht. Ich suche daher eine unabhängige lösung, die immer funktioniert, womöglich auch die plattform *eindeutig* erkennt (bei meiner lösung wird davon ausgegangen, dass es sich nur um die beiden plattformen handeln kann).

lg,
rob.

  1. Hi,

    ich möchte einem Perl-script unterscheiden lassen, ob es auf Windos oder Unix läuft

    print $ENV{'SERVER_SOFTWARE'};

    Apache/1.3.4 (Unix) FrontPage/4.0.4.3 PHP/3.0.7

    HTH ;-)

    Abgesehen davon solltest Du mal $^O ausgeben lassen. Ich schätze mal, das ist es, was Du eigentlich suchst...

    Cheatah

    1. Hi Cheatah,

      print $ENV{'SERVER_SOFTWARE'};

      Apache/1.3.4 (Unix) FrontPage/4.0.4.3 PHP/3.0.7

      das ist leider unbrauchbar, denn woher willst du zB. bei der antwort

      Netscape-Enterprise/3.6 SP3

      herausfinden, dass dieser server unter Unix läuft?

      Abgesehen davon solltest Du mal $^O ausgeben lassen. Ich schätze mal, das ist es, was Du eigentlich suchst...

      dake für diesen tipp. Das ist besser geeignet als meine lösung. man muss halt zwischen der ausgabe

      MSWin32

      und allen anderen werten unterscheiden.

      ciao,
      rob.