在 LAMP 盒子上,我通过 PHP 的 exec 函数循环调用 SCP 复制函数,将多个图像复制到远程服务器:
exec("scp ".$this->GetUploadPath(true)." ".$currentServer->Scp.":".$this->GetServerPath($currentServer, true));
结果:工作正常,但 PHP 脚本需要几秒钟才能完成。
但是我不希望 PHP 脚本等待 SCP 作业完成,所以我尝试了以下方法之一:
exec("nohup scp ".$this->GetUploadPath(true)." ".$currentServer->Scp.":".$this->GetServerPath($currentServer, true) . " 1>/dev/null/ 2>&1 &");
结果:PHP 脚本要快得多,但 SCP 尚未完成。图像不会复制到远程服务器。
exec("nohup scp ".$this->GetUploadPath(true)." ".$currentServer->Scp.":".$this->GetServerPath($currentServer, true) . " &");
结果:图像被复制,但是 php 脚本运行时间没有改善,所以我猜 php 脚本仍然等待 SCP 例程完成,尽管我“后台”调用。
任何想法如何实现它,PHP脚本不等待,但SCP过程已经完成?
先感谢您!