Zeile #!/usr/bin/perl Skript in Perl

Sehr Teil kann man sehen, dass die erste Zeile im Perl-Skript ist #!/usr/bin/perl.

Hier ist ein Beispiel einer sehr einfachen Perl-Programm:

▶ Run
#!/usr/bin/perl

print 'Hello';

Wenn Sie diesen Text in die Datei script.pl, und dann in der Konsole ausführen perl script.pl, auf dem Bildschirm erscheint Zeile Hello.

Das interessante ist, dass wenn man aus einer Datei script.pl Zeile #!/usr/bin/perl (nur verlassen eine Zeile print 'Hello';) und starten Sie diesen Code mit Ihrem perl script.pl, ist das Ergebnis genau das gleiche — auf dem Bildschirm erscheint Zeile Hello.

Der Befehl in der Konsole perl script.pl sagt, dass der Interpreter gestartet werden muss perl und in als argument übergeben Sie eine Zeichenfolge script.pl (name der Datei mit dem Code des Programms). Bei dieser Ausführung ist völlig egal, ob in der Datei script.pl die erste Zeile #!/usr/bin/perl oder nicht. Das System startet perl, und dieses Programm bereits wahrnimmt Text aus der Datei als Text das Programm auf der Sprache Perl.

Aber das Team perl script.pl — es ist nicht die einzige Möglichkeit, wie ein Perl-Skript gestartet werden kann. Eine weitere Option ist die Datei ausführbar machen und ausführen.

Wieder nehmen Sie den Text in dem gibt es eine spezielle erste Zeile:

▶ Run
#!/usr/bin/perl

print 'Hello';

Speichern Sie diesen Text in die Datei script.pl und führen in der Konsole:

$ chmod a+x script.pl
$ ./script.pl
Hello

Mit dem Befehl chmod a+x script.pl wir haben die Flag-Datei Sie haben, was es ist die Datei (executable). Und dann mit dem Befehl ./script.pl sagten, dass die Datei ausführen wollen script.pl, die sich im aktuellen Verzeichnis (das aktuelle Verzeichnis mit einem Punkt und /— das Trennzeichen zwischen Verzeichnis und Dateinamen).

Beim Start ./script.pl ist es wichtig, dass die erste Zeile in der Datei war #!/usr/bin/perl. Wenn wir entfernen diese Zeile aus der Datei und versuchen Sie es zu starten ./script.pl, dann erhalten wir die Fehlermeldung:

$ ./script.pl
./script.pl: line 1: print: command not found

Wenn das Perl-Skript startet wie ./script.pl die erste Zeile in der Datei muss #!/usr/bin/perl.

Wenn wir führen Sie die ausführbare Datei mit dem Text des Programms mit Hilfe von ./script.pl, das System irgendwie sollte ausgeführt werden müssen, zu verstehen, was dieser Text des Programms (Mac OS und linux an diesem Ort hat Sie sehen nicht auf die Dateiendung). Das ist nur dafur zu sorgen, das verstehen und verwenden diese erste Zeile in einem speziellen Format. Das Gitter, das Ausrufezeichen und dann der vollständige Pfad zum Interpreter mit dem Code ausgeführt werden müssen.

Wenn Sie eine Zeile in der Datei #!/usr/bin/perl und führen Sie den Code mit Hilfe ./script.pl, das System wird davon ausgegangen, dass der Code geschrieben ist Chelles, in dem Sie arbeiten (Z. B. bash) und versucht den Text des Programms in der Programmiersprache Perl als ob dieser Text auf bash.

Diese spezielle Zeile, ist nicht die Spezifität der Programmiersprache Perl und die Besonderheiten des Systems. Für andere Programmiersprachen auch gibt es eine ähnliche Zeile #!/usr/bin/python, #!/usr/bin/lua usw.

Gesamt Empfehlung — die erste Zeile im Perl-Skript muss immer #!/usr/bin/perl.

Andere Artikel