我在CentOS上使用apache中的php。 我需要为用户提供服务,他们可以通过点击删除大文件。 试图使用shell_exec。 但它不在后台运行。 它运行并让用户等待。
我的命令:
$ D_command =“rm -rf videos /'$ Mdelete'”;
了shell_exec($ D_command);
谢谢!
答案 0 :(得分:4)
ass&在命令的最后。
$D_command="nohup rm -rf videos/'$Mdelete' > /log/deletedfile.log 2>&1 &";
答案 1 :(得分:3)
$PID = shell_exec("nohup $Command 2> /dev/null & echo $!");
答案 2 :(得分:0)
尝试运行
rm -rf videos/'$Mdelete' &
使用exec
。 &符号表示运行到后台
答案 3 :(得分:0)
试试这个:
popen($D_command, 'r')
答案 4 :(得分:0)
我知道这是一个很老的问题,但我遇到了同样的问题,这是尝试使用exec
,shell_exec
,process_open
失败后唯一可行的解决方案:< / p>
$process = popen("nohup $D_command > /dev/null 2> /dev/null & echo $!", 'r');
$pid = fread($process, 32);