system-Aufruf kehrt mit 256 zurück!
Nicolas Bokov
- perl
0 Struppi0 Nicolas Bokov0 Benne
0 Nicolas Bokov
0 MudGuard
Hallo,
ich rufe über cgi-Skript ein system-Befehl auf und der meldet sich mit dem Wert 256 zurück.
8<-----------------------8<
my @aaa = ("asscale", "bild.bmp", "320x240");
system (@aaa) == 0 or die "system @aaa fehlgeschlagen: $?";
8<-----------------------8<
Das Programm - asscale - liegt unter /usr/bin und ist ausführbar sowohl lokal als auch über telnet.
Das Bild liegt unter dem Verzeichnis cgi-bin und hat 777-Rechte (zu Testzwecken ;-). Was ist da falsch?
Danke für die Hilfe
ich rufe über cgi-Skript ein system-Befehl auf und der meldet sich mit dem Wert 256 zurück.
d.h. es ist ein Fehler aufgetreten.
8<-----------------------8<
my @aaa = ("asscale", "bild.bmp", "320x240");
system (@aaa) == 0 or die "system @aaa fehlgeschlagen: $?";8<-----------------------8<
Das Programm - asscale - liegt unter /usr/bin und ist ausführbar sowohl lokal als auch über telnet.
Das Bild liegt unter dem Verzeichnis cgi-bin und hat 777-Rechte (zu Testzwecken ;-). Was ist da falsch?
Ich vermute das Programm möchjte den kompletten Pfad zum Bild oder du übergibst die Parameter nicht korrekt.
Struppi.
Ich vermute das Programm möchjte den kompletten Pfad zum Bild oder du übergibst die Parameter nicht korrekt.
Den Pfad habe ich neu eingegeben und das gleiche. Die Parameter sind ok, weil ich genauso im Terminal mache:
user@pc:> asscale bild.bmp 320x240 + Return-Taste
...und es funktioniert. Kann es sein, dass der Perl in meinem Skript den Parameter 320x240 als eine Zeichenkette interpretiert und dadurch die Zahlen sind nicht mehr die Zahlen, sonder Zeichen... weiss nicht...
Hallo Nicolas,
...und es funktioniert. Kann es sein, dass der Perl in meinem Skript den Parameter 320x240 als eine Zeichenkette interpretiert und dadurch die Zahlen sind nicht mehr die Zahlen, sonder Zeichen... weiss nicht...
nein. das kannst du auch ganz einfach ausprobieren:
my @aaa = ("echo", "bild.bmp", "320x240");
system(@aaa) == 0 or die "fehlgeschlagen: $! ($?)";
Gruß,
Benne
d.h. es ist ein Fehler aufgetreten.
Der sagt mir: Bad file descriptor at /home/user/webserver/cgi/skript.cgi line 455.
Hi,
my @aaa = ("asscale", "bild.bmp", "320x240");
gib auch beim Programm den vollen Pfad an.
cu,
Andreas