Skip to content

Instantly share code, notes, and snippets.

@cjus
Created June 26, 2011 17:42
Show Gist options
  • Save cjus/1047794 to your computer and use it in GitHub Desktop.
Save cjus/1047794 to your computer and use it in GitHub Desktop.
Extract a JSON value from a BASH script
#!/bin/bash
function jsonval {
temp=`echo $json | sed 's/\\\\\//\//g' | sed 's/[{}]//g' | awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}' | sed 's/\"\:\"/\|/g' | sed 's/[\,]/ /g' | sed 's/\"//g' | grep -w $prop`
echo ${temp##*|}
}
json=`curl -s -X GET http://twitter.com/users/show/$1.json`
prop='profile_image_url'
picurl=`jsonval`
`curl -s -X GET $picurl -o $1.png`
@thdoan
Copy link

thdoan commented Apr 1, 2021

Given this JSON in data.json:

{
  "id": "001",
  "color": "blue"
}

And I want to extract value "blue" from JSON property color in Windows git bash (no jq dependency), here's how I do it in a pinch:

grep color data.json | cut -d'"' -f4

Another way to do it:
https://raymii.org/s/snippets/Get_json_value_with_sed.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment