Ken*_*n J 2 syntax json key object jq
我正在尝试使用这个非常简单的命令创建一个 JSON 文件:
jq -n --arg greeting world --arg mykey hello '{"hello":$greeting}'
我的问题是,当我用 $mykey 替换密钥时,出现此错误:
# jq -n --arg greeting world --arg mykey hello {$mykey:$greeting}
jq: error: syntax error, unexpected ':' (Unix shell quoting issues?) at <top-level>, line 1:
{:}
jq: 1 compile error
Run Code Online (Sandbox Code Playgroud)
如何创建一个带有两个参数/变量的简单 JSON 文件?
如jq 手册中所述,当以编程方式指定键名时,定义表达式必须括在括号中:
$ jq -n --arg greeting world --arg mykey hello '{($mykey):$greeting}'
{
"hello": "world"
}
Run Code Online (Sandbox Code Playgroud)