Mailinglisten-Archive |
Hi, > ---------- > Von: 510013071846-0001_(at)_t-online.de[SMTP:510013071846-0001_(at)_t-online.de] > > ich versuche in einem Skript ein Systembefehl via exec() aufzurufen, > so dass dieser im Hintergrund läuft, und PHP nicht auf das Beenden des > Befehls wartet. > > Exec(befehl parameter &) verhält sich aber auch nicht anders als > Exec(befehl parameter) :-( > > Da das Skript ein rekursives Programm startet und dessen Ausführung u.U. > etwas > länger dauern kann ist das keine befriedigende Lösung. > > Ja, das kenn ich ... hatte das auch mal gelöst, nur leider ist das Script zuHause irgendwo vergraben. Wir hatten das damals so geloest: das exec ruft ein script mit Parametern auf ... in etwa so: exec("wrapper $a $b $c"); wrapper ist ein Shell-Script, das dann das eigentliche Programm aufruft. ----- wrapper ------ So in Etwa #!/bin/bash Irgendwo muss was mit trap hin, das verhindert, daß das Script beendet wird (man trap oder man bash ... irgendwo war da was ;) tuirgendeinprogramm $1 $2 $3 < /dev/null >/dev/null 2>&1 ---- ende ----- Das verbiegen von STDIN und STDOUT und STDERR ist auch nicht unwichtig. Falls es nicht klappt --> Mail und ich gugg mal nach - dauert aber etwas. Grüße, Mathias
php::bar PHP Wiki - Listenarchive