Linux 14.981 Themen, 106.344 Beiträge

Mein Perl-Programm will nicht starten!

NeoZeroCool / 12 Antworten / Flachansicht Nickles

Hi,
habe kürzlich mein erstes Perl-Proggi geschrieben (ein sagenhaftes "Hallo Welt"-Programm ;-), um mal zu testen, ob mein Perl (unter SUSE 7.2) richtig installiert ist.
Wenn das Programm mit
> perl HalloWelt.pl
aufgerufen wird, läuft es anstandslos.
Versuche ich es jedoch über den Dateinamen zu starten mit
> HalloWelt.pl
bekomme ich die Fehlermeldung
> bash: HalloWelt.pl: command not found

Mein Programm sieht folgendermaßen aus:
#!/usr/bin/perl -w
print ("Hallo Welt!\\\\n")

Die Fakten kurz und bündig:
- Beim Ausführen von HalloWelt.pl befinde ich mich im richtigen Verzeichnis
- Das Execute-Bit von HalloWelt.pl ist gesetzt
- Die Perl-Programmdatei befindet sich tatsächlich in usr/bin
- Das die bash von SUSE 7.2 mit #! nicht zurecht kommt, kann ich mir nicht vorstellen
- Interessant: Starte ich HalloWelt.pl über den Midnight Commander wird das Programm anstandlos ausgeführt

Also wo liegt das Problem?

HtM
NZC

bei Antwort benachrichtigen
Klaus_T Bundeskanzler „Sein eigenes Script liegt in /usr/bin? Ich würde sagen, er meint eher das...“
Optionen

Ja, sorry, habe gerade noch einmal nachgelesen, dass perl in /usr/bin liegt. Ich nehme alles zurueck.
Allerdings verstehe ich den letzten Satz von dir nicht. Wenn ich mich nicht in dem Verzeichnis befinde, in dem ein Script liegt und das Verzeichnis, in dem das Script liegt, ist in $PATH, kannst du es so aufrufen.
Befindest du dich in dem Verzeichnis, in dem das Script ist, kannst du das Script nur aufrufen, wenn du entweder ./ davor setzt oder den Punkt '.' in $PATH mit aufnimmst.

Oder reden wir hier aneinander vorbei? Ich verstehe dich jetzt so, dass du meinst, man kann ein Script nur aufrufen, wenn man den kompletten Pfad mit angibt.

Bye, Klaus

bei Antwort benachrichtigen