Mailinglisten-Archive |
Aloha, > Von: Zagler, Alexander[SMTP:Alex.Zagler_(at)_clix.de] >=20 > hallo! > wie kann ich einen systemaufruf in eine variable schreiben? > versuch: >=20 > $message =3D system ("/usr/sbin/traceroute $host"); > mail($recipient, "traceroute", $message,"From: $sender"); >=20 > habe schon alle m=F6glichen aufrufe probiert (exec, passthru, = system), > aber der inhalt der traceroute ist einfach nicht in der variable = $message > zu > finden. >=20 Manual -> Funktionen zur Programmausf=FChrung. exec - F=FChrt ein externes Programm aus=20 string exec (string befehl [, string array [, int return_var]]) exec() f=FChrt ein gegebenen Befehl aus, ohne eine Ausgabe zu erzeugen. = Die Funktion gibt lediglich die letzte Zeile aus dem Befehlsergebnis = zur=FCck. Wenn Sie auf die direkte R=FCckgabe/ Ausgabe eines Befehls angewiesen = sind, dann benutzen Sie stattdessen die Funktion passthru(). Ist der Parameter array angegeben, wird dieses mit jeder Zeile des Befehlsausgabe gef=FCllt. Beachten Sie, dass wenn das Array schon = Elemente enth=E4lt, die Funktion exec() die Ausgabe an das Array anh=E4ngt. Wenn = Sie dieses nicht w=FCnschen, rufen Sie die Funktion unset () f=FCr das = Array auf, bevor Sie es als Parameter der Funktion exec() =FCbergeben.=20 --> (ungetestet) exec('/usr/sbin/traceroute '.$host, $aAusgabe, $sReturn); $message =3D join ("\n", $aAusgabe); $message .=3D "Das Programm endete mit Returncode $sReturn\n"; mail ( .... wie bei dir...) Gr=FC=DFe, Mathias
php::bar PHP Wiki - Listenarchive