필요한 태그 값을 캡처하는 것이 가능합니까?잭
예를 들어 태그 값을 캡처하려고 합니다.버전 1531837630468 그리고 입력은ams 환경
따라서 jq는 ams-env를 통해 태그 값을 캡처합니다.
{
"href" : "http://master:8080/api/v1/clusters/HDP?fields=Clusters/desired_configs",
"Clusters" : {
"cluster_name" : "HDP",
"version" : "HDP-2.6",
"desired_configs" : {
"airflow" : {
"tag" : "version1508837789535411",
"version" : 2
},
"ams-env" : {
"tag" : "version1531837630468",
"version" : 7
},
"ams-grafana-env" : {
"tag" : "version1531831836137",
"version" : 5
},
.
.
.
.
.
.
답변1
$ jq -r '.Clusters.desired_configs."ams-env".tag' file.json
version1531837630468
이 ams-env
비트에는 빼기 기호가 포함되어 있으므로 따옴표로 묶어야 합니다. 그 외에는 간단합니다.
ams-env
명령줄에서 변수로 전달 하려면 다음 을 수행하세요.
$ jq -r --arg var "ams-env" '.Clusters.desired_configs[$var].tag' file.json
version1531837630468