私のテキストファイルのデータ形式は次のとおりです。
alex street1 253465873 [email protected]
john street2 442893646 [email protected]
kevin street3 125234763 [email protected]
このデータをヘッダー付きのjson形式に変換する必要があります。
"name" "street" "phone" "e-mail"
ベストアンサー1
あなたは読むことができます元の入力次のようにスペースで区切られたフィールドに分割しますjq
。
$ cat file.txt |
jq -nR '[inputs | split(" ") | { "name": .[0], "street": .[1], "phone": .[2], "e-mail": .[3] }]'
[
{
"name": "alex",
"street": "street1",
"phone": "253465873",
"e-mail": "[email protected]"
},
{
"name": "john",
"street": "street2",
"phone": "442893646",
"e-mail": "[email protected]"
},
{
"name": "kevin",
"street": "street3",
"phone": "125234763",
"e-mail": "[email protected]"
}
]
または、単純な(ネストされていない)表形式データの場合は、次のものを使用できます。ミラー
mlr --inidx --ojson --jvstack rename '1,name,2,street,3,phone,4,e-mail' file.txt