【问题标题】:How to use special characters inside php exec如何在php exec中使用特殊字符
【发布时间】:2013-10-15 08:55:56
【问题描述】:

谁能解释一下如何使这段代码工作?

exec("ffmpeg -f concat -i <(printf "file '%s'\n" ./*.mp4) -c copy output.mp4");

我尝试在 " 和 ' 之前添加 '\',但仍然没有用。 感谢任何帮助。谢谢!

【问题讨论】:

    标签: php exec quotes


    【解决方案1】:

    您必须转义双引号和反斜杠。您可以使用反斜杠:\

    exec("ffmpeg -f concat -i <(printf \"file '%s'\\n\" ./*.mp4) -c copy output.mp4");
    

    【讨论】:

    • 感谢您的快速响应。我按照你之前说的做了,但是好像还是不行。我收到这样的错误 - sh: -c: line 0: syntax error near unexpected token `('
    • 现在正在执行的命令有问题。你可以在终端上测试它,而不是通过 PHP 运行它吗?
    • ffmpeg -f concat -i 这个命令在shell下运行完美。跨度>
    • 我已经编辑了答案。我忘记了转义反斜杠。请再次测试。
    • 还是不行。错误:sh:-c:第 0 行:意外标记 `(' 附近的语法错误
    猜你喜欢
    • 1970-01-01
    • 2011-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-06
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    相关资源
    最近更新 更多