我有一个JSON输出,我需要从中提取一个ID并迭代它们,并发送多个请求到API,使用curl执行REST。例如:
JSON输出是这样的:
{
"glossary": [
{
"Title": "example glossary1",
"id": 1,
"description": "Hello Glossary1"
},
{
"Title": "example glossary2",
"id": 2,
"description": "Hello Glossary2"
},
{
"Title": "example glossary3",
"id": 3,
"description": "Hello Glossary3"
},
{
"Title": "example glossary4",
"id": 4,
"description": "Hello Glossary4"
}
]
}shell脚本应该循环这个JSON文件,提取ID并循环通过并使用CURL执行REST调用。
下面是一个例子:
for (( i = 0 ; i < ${#id[@]} ; i++ ))
do
POST REST API
done发布于 2016-03-21 23:27:52
如果您在一个名为tmp.json的文件中输出,请使用jq获取in列表,每一行一个,然后使用一个简单的for循环向api发送一个帖子。
for i in `cat tmp.json | jq .glossary[].id`; do
curl -X POST http://host/api/$i"
donehttps://unix.stackexchange.com/questions/271307
复制相似问题