json - 使用 jq 创建 JSON 文件

标签 json jq

我正在尝试通过执行以下命令来创建一个 JSON 文件:
jq --arg greeting world '{"hello":"$greeting"}' > file.json
这个命令没有任何输入就卡住了。尽管
jq -n --arg greeting world '{"hello":"$greeting"}' > file.json没有正确解析。我只是想知道是否真的可以创建一个 JSON 文件。

最佳答案

所以你的代码不起作用,因为在双引号内包含了被视为字符串的变量。这就是为什么它不起作用

正如@Jeff Mercado,指出解决方案是

jq -n --arg greeting world '{"hello":$greeting}' > file.json

关于-以一个名字。这实际上是可能的。但截至目前,这在 jq 的发布版本中不可用。如果你在你的系统上编译 jq 的 master 分支。有一个名为 $ARGS.named 的新变量可用于访问信息。

我刚刚编译并检查了下面的命令,它就像一个魅力
./jq -n --arg name-is tarun '{"name": $ARGS.named["name-is"]}'
{
  "name": "tarun"
}

关于json - 使用 jq 创建 JSON 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45469133/

相关文章:

json - 无法在字符串内过滤值

json - Bash循环为mongoimport批量合并文件

java - 构建嵌套的 JSONObject

JAVA-生成预定的JSON

json - 使用 jq 将带有数组的 JSON 转换为 CSV

jq 创建一个具有嵌套结构的数组

json - 在Bash中使用jq按对象属性值的长度降序对它们进行排序

json - 如何在Delphi XE3中解析JSON对象中的指定值?

Python JSON格式化数据管理

java - 如何使用 fasterxml jackson 更改 xml 类名?