我遇到了将输出重定向到文件的问题。
我正在用bash写脚本。
以下是代码:
function getParameters
{
echo `avprobe "$TMP_CATALOGUE/$FILE_NAME"` >> "$TMP_CATALOGUE"/file_parameters.txt
}
不幸的是,我在file_parameters.txt中得到的只有:
# avprobe output
它不会抛出任何错误。当我写" avprobe file_name"在终端,它运作正常。
我应该如何编写它才能使其正常工作?
提前谢谢。
答案 0 :(得分:0)
avprobe
似乎将其信息输出到stderr,而不是stdout。
检查this:
avprobe -of json -show_format -show_streams "$TMP_CATALOGUE/$FILE_NAME" >> "$TMP_CATALOGUE"/file_parameters.json
使用2>>
重定向stderr而不是使用>>
重定向stdout:
echo `avprobe "$TMP_CATALOGUE/$FILE_NAME"` 2>> "$TMP_CATALOGUE"/file_parameters.txt