PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Shell CGI-Skript?



Maruu
17-07-2005, 00:48
Hallo!

Bin grad dabei ein Shell CGI-Skript zu schreiben und hab da noch ein kleines Problem, hier das Skript:

#!/bin/sh
#echo -e "Content-Type: text/plain\n\n"

echo Content-type: text/html

echo "<html><body>"
ADRESSE=`echo $QUERY_STRING|sed -e 's/\&/\:/g' -e 's/\=//g' -e 's/MAC.//g'`

RETURN=`/var/test/etherwake $ADRESSE 2>&1`
if [ -z $RETURN ]
then
echo "Befehl wurde erfolgreich ausgeführt!"
else
echo "Es gab einen Fehler beim ausführen des Befehls!<br><br>"
echo "Fehlerbeschreibung:<br>"
echo $RETURN
fi
echo "<br><br><br>"
echo "<a href="/hello/anfrage.html">Weitere Anfrage</a>"

echo "</body></html>"


Es bekommt als übergabeparameter eine MAC-Adresse wobei das nichtd as Problem ist.
Das erste Problem ist, das ich nur im Internet Explorer eine Antwort bekomm, aber nicht im Opera, da wird einfach nix angezeigt.
Das zweite Problem, ich führ ethwerwake aus mit der übergebenen Adresse und möchte testen obs erfolgreich war, die Ausgabe speicher ich in eine Variable und teste dann ob diese leer ist:

RETURN=`/var/test/etherwake $ADRESSE 2>&1`
if [ -z $RETURN ]

wenn der Befehl erfolgreich ausgeführt wurde geht alles, aber wenn nicht (wenn die Variable also gefüllt ist) kommt folgender fehler:

[: The: unknown operand

dazu muss man sagend as in der Variablen folgendes steht:

ether-wake: The Magic Packet host address must be specified as - a station address, 00:11:22:33:44:55, or

Was mach ich falsch??

MFG

Maruu

sagi
17-07-2005, 13:25
#echo -e "Content-Type: text/plain\n\n"
echo Content-type: text/html


Wie du im auskommentieren Teil siehst, endet der Header bereich mit 2 Newlines. Das würd ich beibehalten, vermutlich geht es dann auch im Opera.

mfg
c.

Maruu
17-07-2005, 13:48
OK jetzt gehts auch da aber das andere Problem hab ich noch.

Ich will wissen ob etherwake erfolgreich aufgerufen wurde, wenn ja soll eine Erfolgsmeldung ausgegebenw erden, wenn nein soll asugegeben werden das was falsch ist, und evt noch die Fehlermeldung von etherwake aber das geht so irgendwie nicht. kann mir jemand helfen wie ich sowas bauen kann??

MFG

Maruu