通过PHP执行。我无法将输出(stderr)放入文件中

问题描述 投票:0回答:1

当我通过php运行exec()时,我无法将输出(stderr)放入文件中。

我已在命令末尾包含“ 2> my_out_put_file.txt”以完成此操作。但是当我包含此命令时,该命令将不会执行。但是,如果运行不带“ 2> my_out_put_file.txt”的命令,则它将起作用。

有趣的是,即使我直接通过shell / promt运行,整个命令,即使在命令末尾使用“” 2> my_out_put_file.txt“也可以,但是当我通过php / apache运行它时却无法运行。

不起作用:

exec(“ C:/ FFmpeg / bin / ffmpeg -i $ new_path / $ filename_with_ext -f mp4 -vcodec libx264 -preset ultrafast -profile:v main -acodec aac $ new_path / $ filename.mp4 2> out。 txt“,$ a,$ b);

Works:

exec(“ C:/ FFmpeg / bin / ffmpeg -i $ new_path / $ filename_with_ext -f mp4 -vcodec libx264 -preset ultrafast -profile:v main -acodec aac $ new_path / $ filename.mp4”,$ a,$ b);

最好的问候Neo

php apache ffmpeg command stderr
1个回答
0
投票

这对我有用:

... 2>&1 >> log.txt

也由exec测试:

php -r "exec('ffmpeg -version 2>&1 >> log.txt');"
© www.soinside.com 2019 - 2024. All rights reserved.