简体   繁体   English

使用jq创建JSON对象/字典

[英]Using jq to create JSON objects/dictionaries

In my bash script I have a dictionary/map like: 在我的bash脚本中,我有一个字典/地图,例如:

k1: v1
k2: v2
k3: v3

Can I possibly use jq --slurp or jq --raw-input to actually convert this to JSON like this: 我是否可以使用jq --slurpjq --raw-input像这样将其实际转换为JSON:

{
  "k1": "v1",
  "k2": "v2",
  "k3": "v3"
}

possibly by piping something like: echo k1 v1 k2 v2 k3 v3 | jq [???] 可能通过类似以下的管道操作: echo k1 v1 k2 v2 k3 v3 | jq [???] echo k1 v1 k2 v2 k3 v3 | jq [???]

With the key: value data in input.txt, and the following program in tojson.jq: 使用key: value input.txt中的key: value数据,以及tojson.jq中的以下程序:

[inputs | select(length>0) 
 | [splits(": *")]
 | {(.[0]): .[1]} ]
| add

the invocation: 调用:

jq -n -R -f tojson.jq input.txt

produces: 产生:

{
  "k1": "v1",
  "k2": "v2",
  "k3": "v3"
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM