【发布时间】:2020-06-29 08:59:21
【问题描述】:
在后台运行一个命令,效果很好。
$cmd = 'ffmpeg -re -i ./97.mp4 -vcodec copy -acodec copy -f flv -y rtmp://example.com/c/190843?auth_key=7e2682b5 > output 2>&1 </dev/null &';
exec($cmd, $output, $return_var);
然后我需要在ffmpeg 命令之前睡一段时间。我指的是How do I run multiple background commands in bash in a single line?,它直接在 bash 控制台中运行良好。
虽然在下面的 PHP 脚本中不起作用,但它会在 bash 命令完成运行时返回。
$cmd = '(sleep 5; ffmpeg -re -i ./97.mp4 -vcodec copy -acodec copy -f flv -y rtmp://example.com/c/190843?auth_key=7e2682b5 > output 2>&1 </dev/null) &';
exec($cmd, $output, $return_var);
【问题讨论】: