Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

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>

Geschrieben

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);

Geschrieben

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!?

Geschrieben

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.

Geschrieben

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

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...