2016-07-05 20 views
0

Ich habe eine Reihe von großen JSON-Dateien, die ich schnell im Terminal lesen müssen. Ich bin interessiert Attribute in dem letzten Element jedes json Zugriff auf, die zum Beispiel könnte wie folgt aussehen:Zugriff auf Elemente von JSON in Terminal

 }, 
     "source": "<a href=\"http://twitter.com/download/android\" rel=\"nofollow\">Twitter for Android</a>", 
     "text": "RT @kosaqsi_tweets: Ah ah..!!!", 
     "truncated": false, 
     "user": { 
      "contributors_enabled": false, 
      "created_at": "Tue May 06 04:48:07 +0000 2014", 
      "default_profile": true, 
      "default_profile_image": false, 
      "description": "", 
      "entities": { 
       "description": { 
        "urls": [] 
       } 
      }, 
      "favourites_count": 2147, 
      "follow_request_sent": false, 
      "followers_count": 72, 
      "following": false, 
      "friends_count": 207, 
      "geo_enabled": true, 
      "has_extended_profile": false, 
      "id": 2479274491, 
      "id_str": "2479274491", 
      "is_translation_enabled": false, 
      "is_translator": false, 
      "lang": "en", 
      "listed_count": 1, 
      "location": "Singapore", 
      "name": "karthikeyan vedalam", 
      "notifications": false, 
      "profile_background_color": "C0DEED", 
      "profile_background_image_url": "http://abs.twimg.com/images/themes/theme1/bg.png", 
      "profile_background_image_url_https": "https://abs.twimg.com/images/themes/theme1/bg.png", 
      "profile_background_tile": false, 
      "profile_banner_url": "https://pbs.twimg.com/profile_banners/2479274491/1453298552", 
      "profile_image_url": "http://pbs.twimg.com/profile_images/748055063625605120/rByPUFsn_normal.jpg", 
      "profile_image_url_https": "https://pbs.twimg.com/profile_images/748055063625605120/rByPUFsn_normal.jpg", 
      "profile_link_color": "0084B4", 
      "profile_sidebar_border_color": "C0DEED", 
      "profile_sidebar_fill_color": "DDEEF6", 
      "profile_text_color": "333333", 
      "profile_use_background_image": true, 
      "protected": false, 
      "screen_name": "k84362172", 
      "statuses_count": 1521, 
      "time_zone": null, 
      "url": null, 
      "utc_offset": null, 
      "verified": false 
     } 
    } 
] 

Was den richtigen Befehl im Terminal wäre das letzte Element der JSON-Datei zuzugreifen und diese zu sehen Zum Beispiel der Wert des Attributs "geo_enabled"?

Antwort

0

Der jq Befehl kann Ihr Freund sein.

Zur Not:

jq .user.geo_enabled 

Es wird ein etwas längerer Weg sein, Ihre JSON Struktur gegeben. Wahrscheinlich so etwas wie:

jq .[0].parent.user.geo_enabled 

(Wo 'Eltern' ist was auch immer ist 'über' Ihrem Benutzerschlüssel).

+0

Wie jq auf eine Datei aufrufen, sagen wir, wenn die Datei x.json heißt? –

+0

'jq .user.geo_enabled x.json' – Sobrique