Script unter TELNET starten... mit Parameter übergabe...
Stefan Priebe
- perl
0 Calocybe
Hallo!
Ich habe folgendes Problem:
Wenn ich unter Telnet folgendes eingebe:
perl script.pl?num=2134&datei=213.txt
dann bekomme ich nur ein Datei not found... obwohl es das script.pl gibt. Ich kann es nur ohne Parameter ausführen wie geht es mit ?
Stefan
Auch hallo!
Wenn ich unter Telnet folgendes eingebe:
perl script.pl?num=2134&datei=213.txt
dann bekomme ich nur ein Datei not found...
Klingt ziemlich logisch, da Du dort wohl kein Script namens "script.pl?num=2134&datei=213.txt" herumliegen hast, gell?
Du musst genau die Schritte nachvollziehen, die auch der Webserver tut, wenn er ein CGI-Script aufruft. Unter der Bourne-Shell (sh) sollte es ungefaehr so gehen:
QUERY_STRING='num=2134&datei=213.txt'
export QUERY_STRING
./script.pl
Calocybe
Das nützt mir bloß nichts, ...
da ich mit CronJobs arbeite und das ganze eine Befehlszeile sein muß, die der Server ausführen soll...
Stefan
Das nützt mir bloß nichts, ...
da ich mit CronJobs arbeite und das ganze eine Befehlszeile sein muß, die der Server ausführen soll...
Versuch doch mal:
echo "Name=Donald Duck" ./test.pl
Sollte zumindest bei Programmen funktionieren, die CGI.pm verwenden.
Hi!
da ich mit CronJobs arbeite und das ganze eine Befehlszeile sein muß, die der Server ausführen soll...
Willst Du das Script ueberhaupt nicht als CGI-Script verwenden? Dann uebergib doch einfach die Parameter ganz normal auf der Kommandozeile:
script.pl num=2134 datei=213.txt
Dann steht in $ARGV[0] "num=2134" und $ARGV[1] enthaelt "datei=213.txt".
Erik: Die echo-Ausgabe in das Script pipen heisst nichts anderes, als die POST-Methode zu simulieren. Ist auch ne Loesung, falls das Scipt POST-faehig ist.
Calocybe
da ich mit CronJobs arbeite und das ganze eine Befehlszeile sein muß, die der Server ausführen soll...
(export QUERY_STRING='num=2134&datei=213.txt'; ./script.pl)
Oder Calocybes Lösung in ein Shell-Skript schreiben und dieses via cron ausführen.