shell_exec не работает в фоновом режиме, любое другое решение?
Я использую PHP в Apache на CentOS. Мне нужно обслуживать пользователей, чтобы они могли удалять большие файлы одним кликом. пытаясь использовать shell_exec. но это не работает в фоновом режиме. он запускается и заставляет пользователя ждать.
моя команда:
$ D_command = "rm -rf videos / '$ Mdelete'";
shell_exec ($ D_command);
Спасибо!
5 ответов
Задница и в конце команды.
$D_command="nohup rm -rf videos/'$Mdelete' > /log/deletedfile.log 2>&1 &";
$PID = shell_exec("nohup $Command 2> /dev/null & echo $!");
Попробуйте запустить
rm -rf videos/'$Mdelete' &
с помощью exec
, Амперсанд указывает на бег на задний план
Я знаю, что это довольно старый вопрос, но у меня была та же проблема, и это было единственное рабочее решение после попытки и неудачи с exec
,shell_exec
, process_open
:
$process = popen("nohup $D_command > /dev/null 2> /dev/null & echo $!", 'r');
$pid = fread($process, 32);