使用JQ替换JSON模板中的变量 [英] Replacing variables in a JSON template using JQ

查看:24
本文介绍了使用JQ替换JSON模板中的变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想用"Hello Jack"值填充json模板,但"Hello"部分应该保留在模板中,有什么方法可以做到这一点吗?我尝试了下面的代码,但出现错误:

jq -n --arg person "Jack" '{my_key: "Hello "$person}'
jq: error: syntax error, unexpected '$', expecting '}' (Unix shell quoting issues?) at <top-level>, line 1:

推荐答案

使用string interpolation语法如下:

jq -n --arg person Jack '{my_key: "Hello ($person)"}'

要从文件加载模板,请使用-f开关:

$ cat template.json
{
  "my_key": "Hello ($person)"
}
$ jq -n --arg person Jack -f template.json
{
  "my_key": "Hello Jack"
}

这篇关于使用JQ替换JSON模板中的变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆