bozoo Geschrieben 7. Februar 2002 Geschrieben 7. Februar 2002 Servus, wie kann man den ein Perlprogramm mit Parametern aufrufen? Bzw., wie kann die zusätzlichen Benutzereingaben beim Aufruf des Programms als Parameter interpretieren? Volkaman.
BigMac Geschrieben 7. Februar 2002 Geschrieben 7. Februar 2002 Meinst Du auf Kommandozeilen-Ebene oder einfach über einen Browser?! Bei einem Browser: http://www.deinedomain.de/cgi.bin/script.pl?var1=wert1&var2=wert2&varN=wertN Dann machst Du das im Skript so: use CGI qw/:all/; # einbinden des CGI Moduls my $variable1 = param('var1'); # mittels der Funktion param den entsprechenden wert/variable einlesen my $variable2 = param('var2'); my $variablen = param('varN'); Auf Kommandozeilen-Ebene sollte es so funktionieren: perl scriptname.pl -wert1 -wert2 -wert3 Die Übergebenen Werte stehen dann in dem Array $ARG{...}.. oder $ARGV.. da bin ich mir nicht mehr soo sicher.
BigMac Geschrieben 7. Februar 2002 Geschrieben 7. Februar 2002 Hab nochmal nachgeschlagen,.. die übergebenen Kommandozeilen Parameter stehen in @ARGV.
Wasi Geschrieben 7. Februar 2002 Geschrieben 7. Februar 2002 ja, das stimmt, das hätt ich Dir auch ohne Nachzuschlagen sagen können. Sei's drum. Die, wie ich finde schönste Möglichkeit das auszuwerten ist folgende: while ($#ARGV > -1) { $CMDLINE = shift @ARGV; if ($CMDLINE eq "/a") { $A = shift @ARGV; } elsif ($CMDLINE eq "/b") { $B = shift @ARGV; } elsif ($CMDLINE eq "/c") { $C = shift @ARGV; } . . . else { print STDERR "invalid cmdline arg... usage: $0 /a <a> /b <b>/c <c> ..." } } Dann noch $A $B $C ... auf Gültigkeit testen und fertig ist der Lack... ZäR
Wasi Geschrieben 7. Februar 2002 Geschrieben 7. Februar 2002 Sorry, Streiche: print STDERR "invalid cmdline arg... usage: $0 /a <a> /b <b>/c <c> ..." Setze: print STDERR "invalid cmdline arg... usage: $0 /a <a> /b <b>/c <c> ...";
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden