Tente isso,
jq '.items[].properties.content' t.json
Adicione -r
se você quiser se livrar das aspas duplas
temos o arquivo json follwing
more t.json
{
"href" : "htr",
"items" : [
{
"href" : "lpo",
"tag" : "version1533203561827110",
"type" : "kafka-log4j",
"version" : 6,
"Config" : {
"cluster_name" : "hdp",
"stack_id" : "HDP-2.6"
},
"properties" : {
"content" : "Licensed to the Apache Software Foundation",
"controller_log_maxbackupindex" : "20",
"controller_log_maxfilesize" : "256",
"ey=log4j.rootLogger" : "DEBUG",
"ey=properties.content" : "DEBUG",
"kafka_log_maxbackupindex" : "20",
"kafka_log_maxfilesize" : "256"
}
}
]
}
queremos imprimir apenas o valor do conteúdo
jq '.items[].properties | to_entries[] | " \(.value)"' t.json
" Licensed to the Apache Software Foundation"
" 20"
" 256"
" DEBUG"
" DEBUG"
" 20"
" 256"
mas imprime todos os outros valores
onde estou errado e o que devo corrigir?
saída esperada
" Licensed to the Apache Software Foundation"