This question arrises from the following post:
jq -c -r ".[]" C:\setting-es.json | while read line; do echo '{"index":{}}'; echo $line; done > bulk.json
The above jq shell command is throwing error "Missing statement body in do loop"
I have tried to change syntax around but still it is not working. I am trying to write a shell script to transform the following data for elasticsearch's bulk api:
[{
"codeId": "111",
"association": [{
"associationId": 123,
"businessUnitsAssociationId": 1,
"financialBusinessUnits": "DCS",
"businessApprovalLimit": [{
"businessApprovalLimitApprovalLimitId": 1,
"itemMinAmount": "0.00",
"itemMaxAmount": "0.00"
}, {
"businessApprovalLimitApprovalLimitId": 2,
"itemMinAmount": "0.00",
"itemMaxAmount": "0.00"
}, {
"businessApprovalLimitApprovalLimitId": 3,
"itemMinAmount": "0.00",
"itemMaxAmount": "0.00"
}]
}]
}]
I am trying to transform it to the following:
{"index":{}}
[{"codeId":"111","association":[{"associationId":123,"businessUnitsAssociationId":1,"financialBusinessUnits":"DCS","businessApprovalLimit":[{"businessApprovalLimitApprovalLimitId":1,"itemMinAmount":"0.00","itemMaxAmount":"0.00",},{"businessApprovalLimitApprovalLimitId":2,"itemMinAmount":"0.00","itemMaxAmount":"0.00",},{"businessApprovalLimitApprovalLimitId":3,"itemMinAmount":"0.00","itemMaxAmount":"0.00",}]}]