好吧,我有一个操作系统Ubuntu。我有lampp。现在我想在后台执行一些命令,这需要至少10-15分钟才能执行。我想从web界面的cli脚本执行这个命令。从PHP脚本中使用&&在后台执行多个linux命令
一审:
当我做到这一点,PHP脚本能够成功地在后台运行命令:
command1 &> /dev/null &
二审:
但是,当我这样做:
command1 &> /dev/null && command2 &
,
然后该命令不会在后台运行,php脚本会暂停,直到执行此命令。我想在command1完成后执行command2,这样我(或者我的php脚本)就可以知道command1已经被执行了。但它应该在后台,否则我的PHP脚本不能按时执行。
当我从命令行执行第二个实例时,它能够在后台运行,但是当我从php脚本执行它时,它无法在后台运行。
我使用php的exec函数来执行这些命令。
<?php
exec('command1 &> /dev/null && command2 &',$out,$ret);
?>
任何帮助,将不胜感激。
您是否尝试过使用两个'exec'语句,一个接一个? – Machavity
你可能需要'&'而不是'&&'。 –