Reputation: 599
I have a text file data.txt
:
Framework1,Version1
Framework2,Version2
Framework3,Version3
I need to convert it to data.json
which would look like:
[
{"FrameworkName":"Framework1", "VersionName":"Version1"},
{"FrameworkName":"Framework3", "VersionName":"Version2"},
{"FrameworkName":"Framework3", "VersionName":"Version3"}
]
I have tried using awk
but it hasn't helped me much. Any help would be appreciated.
Upvotes: 5
Views: 11143
Reputation: 92854
jq
solution:
jq -Rs '[ split("\n")[] | select(length > 0)
| split(",") | {FrameworkName: .[0], VersionName: .[1]} ]' data.txt
The output:
[
{
"FrameworkName": "Framework1",
"VersionName": "Version1"
},
{
"FrameworkName": "Framework2",
"VersionName": "Version2"
},
{
"FrameworkName": "Framework3",
"VersionName": "Version3"
}
]
https://stedolan.github.io/jq/manual/v1.5/
Upvotes: 6