私はDebianのOS-Xシステムで開発されたPHPスクリプトをテストしています。バックグラウンドでのPHPスクリプトの実行
はそれを再現するために、私は2つのスクリプトを書いた:parent.phpとchild.php:
parent.php:
#!/usr/bin/php
<?php
echo "parent started...\n";
shell_exec(__DIR__ . '/child.php &2>/dev/null &');
echo "parent finished.\n";
child.php:
#!/usr/bin/php
<?php
echo "child started...\n";
sleep(5);
echo "child finished.\n";
parent.phpを実行しますOS-Xでは、2つの出力行(親が開始、親が終了)を即座に取得します。 Debianで私は "parent started ..."という行を得てから、5秒遅れて "parent finished。" ./child.php & 2>/dev/null & "をシェルで実行すると、即座に即座にプロンプトが返されます。どのように私はこれを修正することができる任意のアイデア?
、私は通常、 'としてそのexecの行を書く{CMD}>を/ dev/null 2>&1&' - 興味があると思いますそれが違いを生むかどうかを知る。 – DaveRandom
あなたは '&2/dev/null'でエラーを抑制することを意味しましたか、単に出力を抑止したいのですか? –