小编Rub*_*thi的帖子

Bash 脚本在 Json 中动态添加新的键值对

我的 JSON 文件是,

{
  "student1": {
    "Name": "Caroline",
    "Age": "24",
    "email": "Caroline123@gmail.com",
    "Phone": "1234567890",
    "Blood group": "O+ve"
  }
}
Run Code Online (Sandbox Code Playgroud)

我想要的输出是,

{
  "student1": {
    "Name": "Caroline",
    "Age": "24",
    "email": "Caroline123@gmail.com",
    "Phone1": "1234567890",
    "Phone2": "1267345980",
    "Phone3": "9865432130",
    "Blood group": "O+ve"
  }
}
Run Code Online (Sandbox Code Playgroud)

新的键值对Phone1Phone2Phone3的值存储在名为 VALUES 的数组中,需要添加到键Phone的位置

m=1
for i in ${VALUES[@]}
do
  jq --arg newval "$i" '.student1 += { VALUES$m: $newval }' <<<"$filepath"
  let "m += 1"
done
Run Code Online (Sandbox Code Playgroud)

上面是我的代码,但它不起作用!任何人都可以帮助我获得所需的输出!

json jq

3
推荐指数
1
解决办法
4203
查看次数

标签 统计

jq ×1

json ×1