我的JSON文件是,
json prettyprint-override">{
"student1": {
"Name": "Caroline",
"Age": "24",
"email": "Caroline123@gmail.com",
"Phone": "1234567890",
"Blood group": "O+ve"
}
}
我想要的结果是,
{
"student1": {
"Name": "Caroline",
"Age": "24",
"email": "Caroline123@gmail.com",
"Phone1": "1234567890",
"Phone2": "1267345980",
"Phone3": "9865432130",
"Blood group": "O+ve"
}
}
新的键值对Phone1、Phone2和Phone3的值存储在名为values的数组中,需要添加到键Phone的位置
m=1
for i in ${VALUES[@]}
do
jq --arg newval "$i" '.student1 += { VALUES$m: $newval }' <<<"$filepath"
let "m += 1"
done
上面是我的代码,但它不工作!谁能帮我得到想要的输出!
您可以使用=
运算符,例如
jq '.student1 += { "Phone2": "1267345980", "Phone3": "9865432130" }'
并使用将现有按键Phone
重命名为Phone1
jq --sort-keys '.student1 += { "Phone2": "1267345980", "Phone3": "9865432130" }| .[] | .["Phone1"] = .Phone | del(.Phone) | {"Student1" : . }'
演示
编辑(由于上次编辑):考虑到您有一个数组值
,例如
$ declare -p VALUES
declare -a VALUES='([0]="\"1267345980\"" [1]="\"9865432130\"")'
还有一个名为Students的JSON文件。json,然后使用
m=2
for i in "${VALUES[@]}"
do
cat <<< $(jq '.student1 += { "Phone'"${m}"'" : '"${i}"'}' Students.json) > Students.json
let "m += 1"
done
为了添加带有从数组中提取的键
Phone2
和Phone3
的元素
附言:在GNU/Linux上测试
我有下面的JSON代码,有必要在每个记录的末尾添加键/值,如示例所示。我使用JOLT Transform处理器进行JSON转换。 输入: 预期输出: 非常感谢你的帮助。提前感谢。
问题内容: 我创建了一个非常简单的bash脚本,该脚本运行一些命令。这些命令之一在运行时需要用户输入。即它询问用户“您想等等吗?”,我只想向其发送回车按键,以便脚本将完全自动化。 我将不必在运行时等待输入或其他任何东西,它足以发送按键,输入缓冲区将处理其余部分。 问题答案: 或利用echo生成的隐式换行符(感谢Marcin) 现在我们可以简单地使用以下选项: ,请勿在每次测试后等待按键 即
问题内容: 我想在Linux PATH中添加一个小脚本,因此不必在实际放置在磁盘上的地方实际运行它。 该脚本非常简单,它是关于通过代理赋予apt-get访问权限的,我使它像这样: 然后,我将其保存为apt-proxy.sh,将其设置为+ x(chmod),当我位于该文件所在的目录中时,一切正常。 我的问题是:如何将此 apt-proxy 添加到 PATH, 以便实际上可以将其称为真正的apt-ge
我想在linux路径中添加一个小脚本,这样我就不必在磁盘上实际运行它。 这个脚本非常简单,是关于通过代理提供apt-get访问权限的,我是这样做的: 然后我将其保存为apt代理。sh,将它设置为x(chmod),当我在这个文件所在的目录中时,一切都正常工作。 我的问题是:如何将这个apt-代理添加到PATH中,这样我就可以实际调用它,就好像它是真正的apt-get一样?[从任何地方] 寻找命令行唯
写一个脚本,任意输入一个目录和一个字符串,对输入的字符串进行判断,如果字符串内容等于”ww”,则将该目录下的所有子目录删除,所有子文件拷贝到/var 目录下:如果字符串内容等于”rr”,则在该目录下创建 test1.txt 文件
本文向大家介绍javascript 动态脚本添加的简单方法,包括了javascript 动态脚本添加的简单方法的使用技巧和注意事项,需要的朋友参考一下 异步加载js文件或者异步加载js模块,支持所有浏览器,包括IE,参考至javascript高级编程 1.createScript方法用于创建一个script标签并添加到body标签中 2.createModule方法用于创建一个script脚本的标