You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows下如何将grep处理后的ffmpeg命令结果输出到文件?

解决Windows下ffmpeg+grep输出到文件的问题

你的命令存在两个核心问题:

  • 文件占用冲突:第一条命令同时对C:\!TEMP.txt进行写入和读取操作,Windows不允许同一文件被同时读写,因此报错。
  • 未捕获stderr输出:ffmpeg的silencedetect滤镜信息输出到标准错误流(stderr),第二条命令未将stderr合并到标准输出流(stdout),导致grep接不到过滤内容,无输出;另外grep命令前的-是多余的。

正确的命令写法:

cmd /U /c ffmpeg -i "C:\video.webm" -af silencedetect=noise=-50dB:d=0.1 -f null - 2>&1 | grep silencedetect > "C:\!TEMP.txt" & type "C:\!TEMP.txt"

说明:

  • 2>&1:将ffmpeg的stderr输出合并到stdout,确保grep能捕获到silencedetect的日志内容。
  • 直接通过管道将ffmpeg的输出传给grep过滤后写入目标文件,避免了同一文件同时读写的冲突。
  • 用cmd /c替代/k:执行完命令后自动关闭cmd窗口,若需要保留窗口可换回/k。

内容的提问来源于stack exchange,提问作者DannyhelMont

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 23:39:22