Я пытаюсь получить доступ к полю «мой тег» из следующего json, используя jq из сценария оболочки:
JSON-файл:
{
"tag": {
"value": "hello"
},
"my-tag": {
"value": "hello-my-tag"
}
}
Сценарий оболочки:
#!/bin/bash
main()
{
search="my-tag"
file="myjson.json"
value=($(jq ".$search.value" "$file"))
echo $value
}
main "$@"
При выполнении этого скрипта я получаю следующую ошибку:
error: tag is not defined
.-tag.value
^^^
1 compile error
Как я могу правильно извлечь поле в сценарии оболочки?
.-tag.value
создает впечатление, что переменная оболочки$tag
не содержитmy-tag
, как вы думаете (а содержит-tag
). Вы уверены в его содержании? - person Etan Reisner   schedule 17.12.2015