
Ich verwende Manjaro Linux und Perl 5.20.1, die vorinstalliert waren.
Ich habe angefangen, Perl zu lernen und muss es in meinen Pfad in bekommen ~/.bashrc
. (Manjaro verwendet .bashrc
und nicht ). Ich sollte meine Skripte von überall in meinem .bash_profile
ausführen können . Ich muss jetzt in das Verzeichnis gehen, in dem sie sich befinden, sie ausführbar machen und dann eingeben ../script.pl
~/
perl myscript.pl
Kann ich nicht ein hinzufügen $PATH
und einfach von ausführen können ./myscript.pl
?
Antwort1
Ich denke, dass die Antwort, die Sie suchen, Punkt 3 ist, aber nur für den Fall habe ich die Punkte 1 und 2 hinzugefügt:
Wenn du läufst
perl script.pl
dann müssen Sie die Datei nicht ausführbar machen. Wenn eine Datei nicht ausführbar ist, übergeben Sie den Namen des Skripts als Argument an den Perl-Befehl.
perl
Wenn Sie ohne Angabe eines Pfads (also ) ausführen können/usr/bin/perl script.pl
, dann ist die ausführbare Perl-Dateibereitsin Ihrer Pfadumgebung (weil Sie keinen Pfad angeben).Wenn Sie das Skript ausführen möchten, ohne den Befehl
perl
explizit anzugeben, müssen Sie Ihrer PATH-Umgebung nichts hinzufügen. Geben Sie stattdessen den Pfad an.im Skript. Also, zusätzlich dazu, dass Sie das Skript ausführbar machen (was Sie bereits getan haben), setzen Sie dies alsErsteZeile des Skripts#!/usr/local/bin/perl -w
Ändern Sie den Pfad im Skript entsprechend, um den richtigen Pfad anzugeben.
which perl
zeigt Ihnen den Pfad zu Ihrer ausführbaren Perl-Datei an.
So zum Beispiel:
#!/usr/local/bin/perl
print "Hello World!\n";
Jetzt können Sie es ausführen mit./script.pl