Passing bash variable to jq

The Solution to Passing bash variable to jq is

Consider also passing in the shell variable (EMAILID) as a jq variable (here also EMAILID, for the sake of illustration):

   projectID=$(jq -r --arg EMAILID "$EMAILID" '
        | select(.username==$EMAILID) 
        | .id' file.json)


For the record, another possibility would be to use jq's env function for accessing environment variables. For example, consider this sequence of bash commands:

[email protected]  # not exported

The output is a JSON string:

"[email protected]"

~ Answered on 2016-10-13 17:42:40

Most Viewed Questions: