stoner66 Geschrieben 17. September 2001 Geschrieben 17. September 2001 Wie kann man beim Aufruf eines Perl-Scriptes Parameter übergeben bzw. diese ausfangen. Ich möchte meinem Programm einen Parameter mitgeben. z.B. perl -w programm.pl -parameter Ich hab allerdings keine Info dazu gefunden. Bestimmt kann mir hier jemand weiterhelfen!? :confused: <FONT COLOR="#a62a2a" SIZE="1">[ 17. September 2001 11:45: Beitrag 1 mal editiert, zuletzt von stoner66 ]</font>
BigMac Geschrieben 17. September 2001 Geschrieben 17. September 2001 Rufst Du das Skript nur über die Konsole (z.B. Telnet, SSH) auf, oder auch über den Browser? Wenn Du ein Skript mittels Browser aufrufst, kannst Du Variablen in folgender Form übermitteln... [url="http://www.name.de/cgi-bin/skript.pl?variable1=wert&variable2=wert&variableN=wert"]http://www.name.de/cgi-bin/skript.pl?variable1=wert&variable2=wert&variableN=wert[/url] Einlesen kannst Du diese Werte dann mittels dem CGI-Modul und dem Befehl "param"... my $variable1 = param(variable1); my $variable2 = param(variable2); my $variableN = param(variableN);
stoner66 Geschrieben 17. September 2001 Autor Geschrieben 17. September 2001 Ich ruf das Programm nur per Konsole auf. Wie kann ich dann ne Usage besteln? So my $variable1 = param(variable1); if ($variable1 eq '-h') { print("Usage: -x xyz"); } elsif ($variable1 eq '-x') { #tu dies und das } Oder gibt es da noch andere Möglichkeiten!?
BigMac Geschrieben 17. September 2001 Geschrieben 17. September 2001 Jo,.. so könntest das basteln... aber wenn Du das Skript über die Konsole aufrufst, kannst Du auf diese Weise keine Veriablen übergeben... und Parameter auch nicht... ich hab sowas auch mal versucht,.. bin aber zu keinem vernünftigem Ergebnis gekommen.
stoner66 Geschrieben 17. September 2001 Autor Geschrieben 17. September 2001 Ich bin da auch nicht weiter gekommen :mad: Es muss da wohl eine andere Möglichkeit geben...
alligator Geschrieben 17. September 2001 Geschrieben 17. September 2001 Hi Leute. Also wenn du ein Programm so Aufrufst: perl DeinProgramm.pl DeineParameter Dann stehen diese Parameter in der Umgebungsvariable @ARGV (achtung case sensitiv). Wenn du nun das Script DeinProgramm.pl die Ausgabe print $ARGV[0]; machst, dann müssten deine eingegebenen Parameter angezeigt werden bis zum ersten "blank". $ARGV[1] dann wieder bir zum nächsten "blank". Also das heisst, dass jedes Leerzeichen bei der Parameterübergabe ein neues Feld erzeugt. Ich hoffe das war das Problem Falls nicht, dann hab irgendwwas falsch verstanden :eek: :confused: cu alligator
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