无法将命令存储到 bash 中的变量

Cannot store command to variable in bash

我一直在尝试编写一个程序来获取 Sox 中的音量调整统计信息,并将其存储在一个变量中。

要做到这一点你必须做

sox *your-audio-file* -n stat,

最后一行将显示我想要的统计数据。

但是,当我尝试将该命令的全部输出存储在变量 INITSTAT 中时,它仍然是空白的,应该将输出存储在变量中的代码行只是将输出打印到终端。这是我的:

INITSTAT=`sox $audioFilePath -n stat`
echo $INITSTAT

其中“$audioFilePath”是我试图获取相关信息的音频文件的路径。

如果有人知道哪里出了问题,将不胜感激。

我建议将 stderr 重定向到 stdout:

INITSTAT=$(sox "$audioFilePath" -n stat 2>&1)