Perl-Script syntaxtesten ohne es auszuführen?
am 16.09.2006 20:53:17 von Marten Lehmann
Hallo,
gibt es eine Möglichkeit zu testen ob ein bestimmtes Script Syntaxfehler
hat ohne es gleich auszuführen? Bei Perl-Modulen geht das 8auch wenn
nicht direkt dafür gedacht) mit perl -MModul.
Tschüß
Marten
Re: Perl-Script syntaxtesten ohne es auszuführen?
am 16.09.2006 20:57:28 von Toni Erdmann
Marten Lehmann wrote:
> Hallo,
>
> gibt es eine Möglichkeit zu testen ob ein bestimmtes Script Syntaxfehler
> hat ohne es gleich auszuführen? Bei Perl-Modulen geht das 8auch wenn
> nicht direkt dafür gedacht) mit perl -MModul.
>
> Tschüß
> Marten
perl -c script.pl
Toni
Re: Perl-Script syntaxtesten ohne es auszuführen?
am 16.09.2006 21:04:42 von 3.14
Marten Lehmann wrote:
>gibt es eine Möglichkeit zu testen ob ein bestimmtes Script =
Syntaxfehler=20
>hat ohne es gleich auszuführen? Bei Perl-Modulen geht das 8auch wenn=20
>nicht direkt dafür gedacht) mit perl -MModul.
function perlcheck {
perl -cwMstrict $1
perl -cw $1
}
pi
--=20
Attachment? Nein: http://piology.org/ILOVEYOU-Signature-FAQ.html
Re: Perl-Script syntaxtesten ohne es auszuführen?
am 16.09.2006 22:42:12 von Frank Wiegand
Hi,
Marten Lehmann schrieb:
> gibt es eine Möglichkeit zu testen ob ein bestimmtes Script Syntaxfehler
> hat ohne es gleich auszuführen? Bei Perl-Modulen geht das 8auch wenn
> nicht direkt dafür gedacht) mit perl -MModul.
Bestimmter Code wird auch bei -c ausgeführt:
$ cat test.pl
#!/usr/bin/perl -l
use warnings;
use strict;
BEGIN { print "BEGIN wird sofort ausgeführt" }
CHECK { print "CHECK auch" }
# here the syntax error
my $var = "wrong quote';
print $var;
__END__
$ perl -c test.pl
BEGIN wird sofort ausgeführt
Can't find string terminator '"' anywhere before EOF at test.pl line 10.
CHECK auch
test.pl syntax OK
Wenn du also panisch bist, solltest du dir einen Editor schnappen, der auch
obskure Code-Konstrukte ordentlich highlighten kann (und Fehler anzeigt), und
dir alles von Hand durchlesen.
Frank
PS: Bitte sag Bescheid, wenn du den Editor gefunden hast, der bei auch noch so
obskurer Perl-Syntax nicht aussteigt.