在Shell脚本中将值存储到变量

时间:2015-05-29 11:32:08

标签: bash shell jq

" $电子邮件"有值数组,我想解析它的值,为此,我使用jq。如果我做以下命令

echo "$emails" | ./jq '.total_rows'

我可以得到值,即4,我想将返回的结果存储到某个变量中,

total_rows="$emails" | ./jq '.total_rows'

但是total_rows没有价值。

echo $total_rows

如何将返回的结果存储到变量中?

1 个答案:

答案 0 :(得分:10)

您必须使用正确的引用,如下所示:

total_rows=`echo "$emails" | ./jq '.total_rows'`

``将执行命令并给它total_rows的值,所以无论输出是什么

echo "$emails" | ./jq '.total_rows'

将存储在total_rows

正如Tom Fenech的评论中所提到的,最好使用$()进行命令替换。它提供了更好的可读性。所以你能做的是:

total_rows=$(echo "$emails" | ./jq '.total_rows')