繁体   English   中英

PHP exec()无法从bash命令获取输出

[英]PHP exec() not grabbing output from bash command

我正在尝试从bash命令获取输出。 如果我直接在bash中执行some命令,则会看到结果。 但是不能使用PHP exec()函数。

$command = "ffmpeg -i '$video_path' 2>&1 | grep Video | perl -wle 'while(<>){ $_ =~ /.*?(\d+x\d+).*/; print $1; }'";
$res = exec($command/*, $output*/);

print_r($res);
// print_r($output);

此命令尝试使用ffmpeg lib获得视频分辨率。 视频路径很好,我对此进行了三重检查。

谢谢!

编辑:bash输出中的屏幕截图

在此处输入图片说明

尝试在正则表达式中使用反斜杠转义$。 由于您将所有内容都用双引号引起来,因此PHP试图插入$ _的值,这不是问题。 运行您的代码时,我得到了一个未定义的变量通知。 当我逃离美元时,它对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM