Shell脚本:迭代json数组

Dre*_*ams 1 bash shell

我有一个jsons数组,我需要迭代.我做一个卷曲调用并得到这个结果,需要处理它的东西.该数组如下所示:

 [
{"id": "f0345a01", "name": "scala1"},
 {"id": "6f907cf", "name": "scala2"}, 
{"id": "d887f61", "name": "scala3"}, 
{"id": "5d07fca", "name": "scala5"}, 
{"id": "94ddaa", "name": "scala12"}
]
Run Code Online (Sandbox Code Playgroud)

我需要从这个数组中获取id.我找不到任何办法这样做.我尝试了另一个stackoverflow问题:

for i in "${arr[@]}" 
do
    echo "$i"

done
Run Code Online (Sandbox Code Playgroud)

hek*_*mgl 8

使用jq获得的ID:

curl http://... | jq -r '.[].id'
Run Code Online (Sandbox Code Playgroud)

while如果要执行进一步处理,可以将其传输到bash 循环:

curl http://... | jq -r '.[].id' | while read id ; do
    do_something "${id}"
done
Run Code Online (Sandbox Code Playgroud)