2013-06-17 5 views
5

Ich bin in Linux (CentOS) versucht, ein einfaches Perl-Skript aus einer Datei auszuführen. Ich erhalte einen Fehler. Ich denke, es hat etwas mit der Syntax zu tun, aber ich kann es nicht herausfinden.Ausführen von Perl-Skripten aus einer Datei in Linux

$ perl -e 'print "Hello World\n";' 

Dies läuft gut und wird Hello World in der nächsten Zeile drucken. Allerdings, wenn ich dies in vi und machen es wie perlOne speichern, genau das gleiche (perl -e ‚print‚Hallo Welt \ n‘;‘) und führen Sie den Befehl:

$ perl perlOne 

erhalte ich die Fehlermeldung: " Syntaxfehler bei perlOne Linie 1, in der Nähe von „perl -e - Ausführung von perlOne abgebrochen wegen Übersetzungsfehlern.“

es ist die gleiche Linie, aber es funktioniert nicht in der Datei

ich arbeite. durch das Perl-Tutorial von Linux Pro Magazine - wo bekomme ich das.

+1

Sie werden wahrscheinlich ein Void mit switches (auf diese Weise) und befehle Aufrufe zu "Perl" in einem tatsächlichen Perl-Skript ... :) – summea

+3

Da Sie bereits die Datei mit Perl ausführen, brauchen Sie nur die Anweisung in der Datei: 'print" Hello World \ n ";' – perreal

+0

Yep @perreal - das war's. Ich vermute, ich habe einige der Befehle/Syntax verdoppelt. –

Antwort

10

Die Befehlszeile swi tch -e können Sie Code über die Befehlszeile ausführen, anstatt Ihr Programm in eine Datei schreiben und dann ausführen zu müssen.

$ perl -e 'print "Hello World\n";' 

Ausgang:

Hello World 

Wenn Sie es aus Ihrer Datei ausführen möchten, müssen Sie es anders schreiben:

#!/usr/bin/perl 

use strict; 
use warnings; 

my $message = 'Hello World'; 
print $message . "\n"; 

# You can also make it directly 
print "Hello World\n"; 

Während ich es nicht empfehlen kann auch geschrieben werden wie:

print "Hello World\n"; 
+0

wie man die Datei mit Hilfe von. versucht mit 'perl dateiname' –

+0

@SanKrish was meinst du mit' .'? Wie 'perl./Dateiname'? *** Wäre besser, wenn Sie eine neue Frage zu Ihrem Problem stellen. *** – Prix

Verwandte Themen