【发布时间】:2015-02-19 11:47:27
【问题描述】:
当我从终端执行脚本时,它会打印结果 sftp。
如果 php 脚本是从 cron 执行的,它不会打印任何内容,$result 是空的。
Crontab:
23 12 * * * php script.php >> /tmp/logs.log
脚本:
<?php
$command = 'lftp -u user,Password sftp://domain.com -e "set ftp:passive-mode off; set ftp:auto-passive-mode on; put -O /path/tests toTransfer/file.zip; bye;"';
$result = shell_exec($command);
echo $result;
if ($result) echo "uploaded";
else echo "Not uploaded";
?>
【问题讨论】:
-
您希望输出回显到哪里?默认情况下,cron 作业的输出会通过电子邮件发送到运行 cron 守护程序的帐户 - 请参阅 man cron 了解详细信息。
-
我想获取结果执行以知道文件是否上传成功。
标签: php shell crontab sftp shell-exec