次のjsonファイルがあります
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"
}
}
]
}
コンテンツの価値だけを印刷したい
jq '.items[].properties | to_entries[] | " \(.value)"' t.json
" Licensed to the Apache Software Foundation"
" 20"
" 256"
" DEBUG"
" DEBUG"
" 20"
" 256"
しかし、他のすべての値を出力します
私はどこが間違っていますか、そして私は何を修正すべきですか?
期待される出力
" Licensed to the Apache Software Foundation"
これを試して、
jq '.items[].properties.content' t.json
追加 -r
二重引用符を取り除きたい場合