【发布时间】:2017-02-22 22:55:22
【问题描述】:
我编写了一个脚本来从file.json 检索某些值。如果我将值提供给 jq select,它会起作用,但变量似乎不起作用(或者我不知道如何使用它)。
#!/bin/sh
#this works ***
projectID=$(cat file.json | jq -r '.resource[] | select(.username=="myemail@hotmail.com") | .id')
echo "$projectID"
EMAILID=myemail@hotmail.com
#this does not work *** no value is printed
projectID=$(cat file.json | jq -r '.resource[] | select(.username=="$EMAILID") | .id')
echo "$projectID"
【问题讨论】:
-
一个相关问题:将 bash 变量传递给 jq 过滤器的语法略有不同
jq -r --arg var "$var" '.[$var]'stackoverflow.com/questions/34745451/…
标签: json bash environment-variables jq