title: How to parse json format output of : kubectl get pods using jsonpath
body: <p>How to parse the json to retrieve a field from output of </p>
  
  <pre><code>kubectl get pods -o json
  </code></pre>
  
  <p>From the command line I need to obtain the system generated container name from a google cloud cluster ...  Here are the salient bits of json output from above command :
  <a href="https://i.stack.imgur.com/ysqWI.png" rel="noreferrer"><img src="https://i.stack.imgur.com/ysqWI.png" alt="enter image description here"></a></p>
  
  <p><a href="https://gist.github.com/scottstensland/278ce94dc6873aa54e44" rel="noreferrer">click here to see entire json output</a></p>
  
  <p>So the top most json key is an array : items[] followed by metadata.labels.name where the search critera value of that compound key is "web"  (see above image green marks).  On a match, I then need to retrieve field </p>
  
  <pre><code>.items[].metadata.name  
  </code></pre>
  
  <p>which so happens to have value :</p>
  
  <pre><code>web-controller-5e6ij   // I need to retrieve this value
  </code></pre>
  
  <p><a href="https://kubernetes.io/docs/reference/kubectl/jsonpath/" rel="noreferrer">Here are docs on jsonpath</a></p>
  
  <p>I want to avoid text parsing output of</p>
  
  <pre><code>kubectl get pods
  </code></pre>
  
  <p>which is</p>
  
  <pre><code>NAME                     READY     STATUS    RESTARTS   AGE
  mongo-controller-h714w   1/1       Running   0          12m
  web-controller-5e6ij     1/1       Running   0          9m
  </code></pre>
  
  <p>Following will correctly parse this <code>get pods</code> command yet I feel its too fragile </p>
  
  <pre><code>kubectl get pods | tail -1 | cut -d' ' -f1
  </code></pre>