Elke: open(DATEI,"text.txt")

Der Interpret liest die Datei nicht ein, die Dateien liegen im gleichen Verzeichnis.
Was mache ich falsch??
Der Code im Anhang
Danke

-------------------------------------------------------------------------------------------------------------------
#!/usr/bin/perl-w

use strict;
open(DATEI,"text.txt")
or die"Datei kann nicht ge\x94ffnet werden weil:$!\n";
my $text;
undef$/;$text=<DATEI>;
while($text=~m/Haus/g)
{
      print"Das Wort Haus wurde gefunden.\n";
}
close(DATEI);

  1. use Mosche; # Begrüssungen werden hier gerne gesehen

    Der Interpret liest die Datei nicht ein, die Dateien liegen im gleichen Verzeichnis.
    Was mache ich falsch??

    Was ist die Fehlermeldung?

    #!/usr/bin/perl-w

    Ist da ein Leerzeichen nach perl?

    use Tschoe qw(Matti);

    --
      Anyone who quotes me in their sig is an idiot. -- Rusty Russell.
    1. Die Fehlermeldung lautet

      No such file or directory

      1. use Mosche; # Begrüssungen werden hier gerne gesehen

        Die Fehlermeldung lautet

        No such file or directory

        Bitte gib die gesamte Fehlermeldung als Copy&Paste. Ohne Zeilennummern kann man mit der Meldung nichts anfangen. Ist ein Leerzeichen zwischen "perl" und "-w" in der Shebang?

        use Tschoe qw(Matti); # Verabschiedungen auch

        --
          Anyone who quotes me in their sig is an idiot. -- Rusty Russell.
        1. Hi Matti,
          hier noch mal das ganze.
           #!/usr/bin/perl-w

          use strict;
          open(DATEI,"text.txt")
          or die"Datei kann nicht ge\x94ffnet werden weil:$!\n";
          my $text;
          undef$/;$text=<DATEI>;
          while($text=~m/Haus/g)
          {
                print"Das Wort Haus wurde gefunden.\n";
          }
          close(DATEI);

          Alle Dateien liegen im gleichen Ordner.
          Fehlermeldung ohne Zeilennummer.
          Danke Gruß Elke

          1. Hi,

            stellt sich die Frage, aus welchem Verzeichnis das Script aufgerufen wird...

            Es spielt keine Rolle, ob Script und Textdatei im selben Verzeichnis liegen. Ist im Dateiname kein Pfad angegeben, vermutet Perl die Datei im gerade aktuellen Verzeichnis... Damit es funktioniert, mußt Du entweder den Scriptpfad ermitteln und in diesen Verzeichnis innerhalb des Scripts wechseln oder sicherstellen, das vor dem Aufruf des Scriptes ein cd scriptpfad erfolgt...

            MfG
            Danny

          2. use Mosche;

            Hi Matti,
            hier noch mal das ganze.
             #!/usr/bin/perl-w

            Also, wenn die erste Zeile bei mir so lautet:
            #!/usr/bin/perl -w
            (ohne Leerzeichen vor dem '#' und mit Leerzeichen zwischen 'perl' und '-w') dann läuft es bei mir ohne Fehlermeldung durch.
            Wenn du das Leerzeichen zwischen perl und -w nicht machst, sucht er nach einem Interpreter namens 'perl-w', den du höchstwahrscheinlich nicht hast. Daraus resultiert die Fehlermeldung "File not found", denn er findet den Interpreter nicht.

            Überprüfe das bitte!

            use Tschoe qw(Matti);

            --
              Anyone who quotes me in their sig is an idiot. -- Rusty Russell.
  2. Hallo Elke.

    open(DATEI,"text.txt")

    Liegt die Datei im gleichen Verzeichnis wie das Script? Siehe auch:
    http://de.selfhtml.org/html/allgemein/referenzieren.htm#relativ

    Freundschaft!
    Siechfred