linux - 如何将 avprobe 的输出重定向到文件?

标签 linux bash avprobe

我在将输出重定向到文件时遇到问题。

我正在用 bash 编写脚本。

代码如下:

function getParameters
{
       echo `avprobe "$TMP_CATALOGUE/$FILE_NAME"` >> "$TMP_CATALOGUE"/file_parameters.txt
}

不幸的是,我在 file_parameters.txt 中得到的唯一东西是:

# avprobe output

它不会抛出任何错误。当我在终端中写入“avprobe file_name”时,它可以正常工作。

我应该如何编写才能让它发挥作用?

提前谢谢你。

最佳答案

avprobe似乎将其信息输出到 stderr,而不是 stdout。

你可能想做什么

检查 this出:

avprobe -of json -show_format -show_streams "$TMP_CATALOGUE/$FILE_NAME" >> "$TMP_CATALOGUE"/file_parameters.json

但是,您也可以...

2>> 重定向 stderr用 >> 代替标准输出:

echo `avprobe "$TMP_CATALOGUE/$FILE_NAME"` 2>> "$TMP_CATALOGUE"/file_parameters.txt

关于linux - 如何将 avprobe 的输出重定向到文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26006914/

相关文章:

sql-server - 在 Linux 上使用 Node.js 访问 SQL Server

LIBAV - avprobe

c - 用于 samba 共享的 Linux fopen() 语法

python - 模拟 bash 的 [ctrl]-l,**清爽**

linux - 运行 cron 后 Bash 清空变量,但手动运行

linux - bash ftp : put only newer files just like filezilla

ffmpeg - 如何使用 avprobe/ffprobe 检测音频采样率?

python-2.7 - Mac上ffprobe/avprobe和youtube_dl的Python问题

linux - SA_RESTART 未在 Linux 下定义,在 Solaris 中编译良好

regex - Bash - 用于确定 ls -al 的输出是文件还是目录以及隐藏的正则表达式