gpt4 book ai didi

bash - 如何使用关键变量使用 jq 获取 json 文件的二级值

转载 作者:行者123 更新时间:2023-12-04 16:18:19 25 4
gpt4 key购买 nike

我需要在 bash 脚本(busybox)中使用 jq 从 json 文件中获取特定值。 json 文件如下所示:

{
"example.com": {
"backend": "1.3.7"
}
}
在我的脚本中有两个变量: projectapp - 因为当然有多个项目和应用程序。我需要使用这些变量值来获取版本值。在这个例子中 project是“example.com”和 app是“后端”
我试过这个
jq --arg p "$project" --arg a "$app" '.[$p].[$a]' file.json
但我确实得到了错误
jq: error: syntax error, unexpected '[', expecting FORMAT or QQSTRING_START (Unix shell quoting issues?) at <top-level>, line 1:
.[$p].[$a]
jq: 1 compile error

最佳答案

你可以这样使用它:

jq -r --arg p "$project" --arg a "$app" '.[$p][$a]' file.json
要不然:
jq -r --arg p "$project" --arg a "$app" '.[$p] | .[$a]' file.json
1.3.7

关于bash - 如何使用关键变量使用 jq 获取 json 文件的二级值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64287645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com