Для проверки существования определенного ключа или значения, в данных JSON , можно использовать встроенные функции jq has() и contains().
Пример Json данных:
1 2 3 4 5 6 7 | { "name": "test", "task": { "uuid": "SEAC4SF", "state": "START" } } |
Проверить существование ключа
1 2 3 4 5 | cat json.txt | jq 'has("does_not_exist")' #false cat json.txt | jq 'has("task")' # true cat json.txt | jq '.task |has("uuid")' #true |
Проверить существует ли значение
1 2 3 4 5 | cat json.txt | jq '.name | contains("does_not_exist")' #false cat json.txt | jq '.name | contains("test")' #true cat json.txt | jq '.task.uuid | contains("SEAC4SF")' #true |