0

これは私のコードです:

$js = SPLoginEngage();
$data = getSilverpopReport($js,'09/01/2012');
$d1 = explode('<FILE_PATH>',$data);
$d2 = explode('</FILE_PATH>',$d1[1]);
sleep(30);
exec('CMD /C run.bat "/download/' . $d2[0] . '"');

run.bat:

@ECHO OFF
start /b "" "C:\Program files\WinSCP\winscp.exe" "SFTP" /command "get "%1"" exit

スクリプトを実行すると、次のように返されます。CMD /C run.bat "/download/Raw Recipient Data Export Sep 13 2012 08-07-54 AM 1371.zip"

ファイルのダウンロードを開始するはずですが、何も起こりません。

その出力を取得して CMD に入れると、正常に動作します。

注: Windows 7 (32 ビット) を実行しています。

4

1 に答える 1

0

exec 引数で CMD を呼び出すのはなぜですか? とにかく、それはexecがすべきことではありませんか?

また、execの結果で何もしていません..コマンドが実行されたかどうかはどうやってわかりますか?

http://php.net/manual/en/function.exec.php

于 2012-09-13T08:19:53.973 に答える