У меня есть некоторый JSON (усеченный), который выводится из встроенного состояния здоровья Elasticsearch.
{
"gl-system-events_1" : {
"settings" : {
"index" : {
"refresh_interval" : "1s",
"number_of_shards" : "4",
"blocks" : {
"read_only_allow_delete" : "true"
},
...
...
Я пытаюсь найти каждый экземпляр "read_only_allow_delete". Эти экземпляры могут быть вложены на разных уровнях в JSON или в разные объекты. Я хотел бы показать полный путь и значение (как это):
gl-system-events_1.settings.index.block.read_only_allow_delete: true
Есть ли эквивалент grep
для JSON? У меня есть эта команда.
jq '.. | objects | select(.read_only_allow_delete)'
, которая производит этот вывод (но я также хотел бы увидеть полный путь).
{
"read_only_allow_delete": "false",
"read_only": "false"
}
{
"read_only_allow_delete": "true"
}
{
"read_only_allow_delete": "true"
}
{
"read_only_allow_delete": "true"
}
{
"read_only_allow_delete": "true"
}
{
"read_only_allow_delete": "false",
"read_only": "false"
}
{
"read_only_allow_delete": "false",
"read_only": "false"
}
{
"read_only_allow_delete": "true"
}
{
"read_only_allow_delete": "false",
"read_only": "false"
}
Буду признателен за любую помощь.