我有一个 JSON 输出,其中包含存储在变量中的对象列表。(我可能措辞不正确)
curl 命令的输出:将在评论中发布,因为我无法在此处发布
我想 grep 输出中显示的“ad6743fae9c54748b8644564c691ba58”位置的值,每次运行 curl 命令时都会更改。我希望它作为输入传递给其他 curl 命令。
请帮忙
最佳答案
"jq"https://stedolan.github.io/jq/download/ 为此是必需的。如果对于“ad6743fae9c54748b8644564c691ba58”,本身每次都改变,下面的脚本怎么样?
of="data.json" && curl ..... -o $of > $of && key=$(cat $of | jq -r '.destination[0]|keys' | jq -r '.[]') && jq -r ".destination[0].$key" $of && unset key of
curl 得到的数据输出为“$of”的名称。
“ad6743fae9c54748b8644564c691ba58”的位置被检索为“$key”。
使用“$key”输出“ad6743fae9c54748b8644564c691ba58”的值。
例如,在这个脚本中,当“ad6743fae9c54748b8644564c691ba58”的位置不变时,“ad6743fae9c54748b8644564c691ba58”可以改为“abcdefg1234567”。
关于json - Linux grep命令从json中查找key的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41788116/