このようなデータがあります。
{
"dateCreated": "2020-06-12",
"status": "pending",
"depositDate": "2020-06-15",
"amount": 41237
}
{
"dateCreated": "2020-06-05",
"status": "paid",
"depositDate": "2020-06-08",
"amount": 37839
}
{
"dateCreated": "2020-04-02",
"status": "paid",
"depositDate": "2020-04-03",
"amount": 67
}
形式はjq
次のとおりです。
request-some-api | jq '.data[] | {dateCreated: .created | strftime("%Y-%m-%d"), status: .status, depositDate: .arrival_date | strftime("%Y-%m-%d"), amount: .amount,}'
.amount
小数点以下の桁数を使用して、セントではなくドルの金額で値を表示するように変更したいのですが...
{
"dateCreated": "2020-06-12",
"status": "pending",
"depositDate": "2020-06-15",
"amount": $412.37
}
{
"dateCreated": "2020-06-05",
"status": "paid",
"depositDate": "2020-06-08",
"amount": $378.39
}
{
"dateCreated": "2020-04-02",
"status": "paid",
"depositDate": "2020-04-03",
"amount": $.67
}
...しかし、これに関する文書が見つかりませんでしたか?jq
このような変換は可能ですか?記号がなくても、ドルとセントの間に数字$
だけを追加すると.
便利です。
ベストアンサー1
このように:
jq '.amount = "$" + (.amount/100|tostring)' file.json
出力
{
"dateCreated": "2020-06-12",
"status": "pending",
"depositDate": "2020-06-15",
"amount": "$412.37"
}
{
"dateCreated": "2020-06-05",
"status": "paid",
"depositDate": "2020-06-08",
"amount": "$378.39"
}
{
"dateCreated": "2020-04-02",
"status": "paid",
"depositDate": "2020-04-03",
"amount": "$0.67"
}