1

私はこの単純なシェルスクリプトを書きました:

#!/bin/sh
STORAGE_PATH=/tmp/;
export STORAGE_PATH;
cd STORAGE_PATH;
perl /{SOME_PATH}/perl-script.pl;

シェルから呼び出すと、期待どおりに完全に機能します。しかし、PHPからは無限にハングし、デバッグ時に、Perlの実行中にハングすることがわかりました。これは、シェルで呼び出された場合は継続するため、実際には意味がありません。

シェバンを間違えました#!/bin/shか?私もやってみまし#!/bin/bashた。

私はphpのすべてのバリエーションで試しました:、、、、execしかし何も機能していません。systemshell_execcallthru

私は何か見落としてますか?

4

1 に答える 1

0

ええと、シェルでどのように機能したかわかりません。

呼び出し/{SOME_PATH}/perl-script.plていますが、変数SOME_PATHが定義されていません。ということSTORAGE_PATHですか?また、あなたは$beforeを忘れました{

その際、Web サーバーを実行しているユーザーが両方のスクリプトを実行する権限を持っていることを確認してください。

于 2013-03-20T18:10:17.077 に答える