-2

GoDaddy サーバーに「SponUpdate.sh」という名前の Cron ジョブを作成しました

これがこのファイルのコードです

#!/bin/bash

/usr/bin/perl /home/content/14/5959214/html/cgi/JLLoadSponFRJ.pl
/usr/bin/perl /home/content/14/5959214/html/cgi/JLLoadSponMGJ.pl
/usr/bin/perl /home/content/14/5959214/html/cgi/JLLoadSponCAD.pl
/usr/bin/perl /home/content/14/5959214/html/cgi/JLLoadSponCJB.pl

問題は、この cron ジョブが実行されると、次のエラーが表示されることです。

「/bin/sh: /var/chroot/home/content/14/5959214/html/cgi/SponUpdate.sh: /bin/bash: インタープリターが正しくありません: 許可が拒否されました」

これは、Perl ファイル「JLLoadSponFRJ.pl」の 1 つのコードです。

my $command = '/web/cgi-bin/php5 -q $HOME/html/GISJobs/JLLoadSpon.php';
exec ($command) or print STDERR "couldn't exec $command: $!";

過去3日間から解決できません。

私を助けてください、

前もって感謝します、

よろしく、

4

2 に答える 2

2

つまり、php を呼び出すいくつかの perl スクリプトを呼び出す bash スクリプトを実行する cron ジョブを起動しています。cron から直接 php を呼び出さないのはなぜですか?

bash スクリプトに「\r\n」行末が含まれていないことを確認してください。「/bin/bash」ではなく「/bin/bash\r」を呼び出そうとしている可能性があります。

于 2012-10-12T14:40:31.890 に答える
0

あなたはbashパスをチェックすることができます

どのbash
次に、perlスクリプトのshebang!#/ bin/bashを修正できます。

于 2012-10-12T14:31:39.643 に答える