コマンドラインから次のコマンドを実行すると、fgコマンドが実行されるまで一時停止します。
/usr/bin/php -r 'phpinfo();' &
PHPコードがshebangに含まれているかどうかにかかわらず#!/usr/bin/php
。
私はCentOSとbashシェルを実行しています。
ベストアンサー1
バックグラウンドでジョブを実行するためのPHP専用メソッドはありません。広く使用されている方法は次のとおりです。
1つを使用してください
screen
。インストールしてscreen
から(まだインストールされていない場合)、画面でPHPスクリプトを実行します。screen
いつでもコンピュータの接続を解除してログオフでき、スクリプトは引き続き実行されます。ここ使用方法に関する何百もの情報がオンラインで入手できますscreen
。使用
nohup
。使用法は次のとおりです。
nohup <yourPHPcommand> &
これにより、ログアウト時にnohup
スクリプトがHANGUP信号に「いいえ」と応答するため、ログアウト後もPHPスクリプトは引き続き実行されます。唯一の問題は、そのタスク/プロセスを前景にインポートして出力を見ることができないことです(重要な場合)。出力をファイルにリダイレクトし、そのファイルから印刷された内容を確認できます。
上記の2つのうちどちらかを使用することをお勧めしますscreen
。フォアグラウンドで実行する場合と同様に、常に画面に接続してプロセスを制御できます。
PS: - 最後に「&」のスクリプトを実行すると&
バックグラウンドに入りますが、端末からログアウトするとスクリプト/プロセスが終了します。