Ваш вопрос довольно неясен, но, тем не менее, я правильно понимаю, это, вероятно, то, что вы хотите.
При условии, что ваш входной файл:
[
{
"TMC": "E17+02412",
"ROADNUMBER": "A-2",
"DIR": "E-90/AP-2/BARCELONA-ZARAGOZA (SOSES)",
"PROV": "LLEIDA",
"CCAA": "CATALUNYA",
"StartLatitude": "41.5368273",
"StartLongitude": "0.4387071",
"EndLatitude": "41.5388396",
"EndLongitude": "0.4638462"
}
]
Вы можете фильтровать содержимое, используя этот фильтр jq
:
jq 'map({ type: "Feature", "geometry": {"type": "LineString","coordinates": [ [.StartLongitude, .StartLatitude| tonumber], [ .EndLongitude, .EndLatitude | tonumber] ] }, properties: {tmc: .TMC, roadnumber: .ROADNUMBER, dir: .DIR, prov: .PROV, ccaa: .CCAA}})' file
В результате получаются новые данные JSON:
[
{
"type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[
0.4387071,
41.5368273
],
[
0.4638462,
41.5388396
]
]
},
"properties": {
"tmc": "E17+02412",
"roadnumber": "A-2",
"dir": "E-90/AP-2/BARCELONA-ZARAGOZA (SOSES)",
"prov": "LLEIDA",
"ccaa": "CATALUNYA"
}
}
]