Php shell_exec wartet offenbar nicht

Hallo,

ich erzeuge via php teilweise sehr große Archive. Die Erzeugung wird mittels tar realisiert. Parallel schreibe ich ein Log sowie am Ende eine txt mit den erzeugten Archiven.

Was jetzt immer wieder passiert ist, dass die txt geschrieben wird und sich danach noch die Dateien verändern, sagt jedenfalls der Timestamp.

Ich befürchte nun, dass shell_exec nicht wartet, bis das tar beendet wurde, sondern mein script einfach weiterläuft. Kann das sein?

Danke

Hmm , dein Befehl erzeugt ja auch keine Ausgabe in den PHP Output , sondern eine Tar Datei ? Somit läuft das ganze im Hintergrund und PHP wartet nicht.

Aber cool wäre hier einfach mal den Code zu posten. Das verhalten bei PHP ist so nicht eindeutig.

Servus,

unter Linux weiss ich nicht ob du die Werkzeuge hast. Unter Win würde ich ne exe oder bat schreiben, die den Packer ohne Option aufruft. Dann wird erst true zurückgegeben wenn der Packer fertig ist. Also beendet wurde.

In php sieht die Steuerung dann so aus:

$Pack = exec(‚mein_kommandozeilenzeug.exe‘);
if(true == $Pack)
{
$RoedelWeiter;
}

widecrypt