これはUbuntuシステム上にあります。ユーザーが私たちの Web サイトにジョブを送信したときに、それをバッチ ジョブとして実行したいと考えています。Cmd.sh はシェル スクリプトです。ターミナルで手動で実行すると、スクリプトは正常に実行されますが、何らかの理由でバッチ ジョブとして実行されません。現在の PHP は次のとおりです。
system("echo /var/www/dbCAN/data/blast/$jobid/cmd.sh | batch");
エラーやクラッシュは表示されず、単にジョブが送信されません。さらに、このコードを変更して「| バッチ」のみを削除すると、ファイルは正常に実行されます。直接実行したくない理由は、時間がかかる可能性のある集中的なプロセスであり、通常、ジョブが完了したときにユーザーにメールを送信するためです (複数のジョブを一度に実行することはありません)。なぜこれが機能しないのか、誰にもアイデアがありますか? パスが正しいことはわかっていますが、バッチの使用法についてはわかりません。助けていただければ幸いです:)