curl 요청에서 반환 된 JSON을 구문 분석하려고합니다.
curl 'http://twitter.com/users/username.json' |
sed -e 's/[{}]/''/g' |
awk -v k="text" '{n=split($0,a,","); for (i=1; i<=n; i++) print a[i]}'
위의 예는 JSON을 필드로 분할합니다.
% ...
"geo_enabled":false
"friends_count":245
"profile_text_color":"000000"
"status":"in_reply_to_screen_name":null
"source":"web"
"truncated":false
"text":"My status"
"favorited":false
% ...
특정 필드를 인쇄하려면 어떻게해야합니까 (로 표시 -v k=text
)?
grep -Po '"'"version"'"\s*:\s*"\K([^"]*)' package.json
. 이것은 grep으로 만 작업을 쉽게 해결하고 간단한 JSON에 완벽하게 작동합니다. 복잡한 JSON의 경우 적절한 파서를 사용해야합니다.