Comment arrondir chiffre sur la dernière colonne à 2 décimales?Comment je peux arrondir chiffre sur la dernière colonne à 2 décimales après un point en utilisant JQ?
Je JSON:
{
"took": 1,
"timed_out": false,
"_shards": {
"total": 9,
"successful": 9,
"failed": 0
},
"hits": {
"total": 2,
"max_score": 2.575364,
"hits": [
{
"_index": "my-2017-08",
"_type": "log",
"_id": "AV5V8l0oDDWj-VP3YnCw",
"_score": 2.575364,
"_source": {
"acb": {
"version": 1,
"id": "7",
"owner": "pc",
"item": {
"name": "Account Average Latency",
"short_name": "Generate",
"description": "Generate of last month"
},
"service": "gsm"
},
"@timestamp": "2017-07-31T22:00:00.000Z",
"value": 210.08691986891395
}
},
{
"_index": "my-2017-08",
"_type": "log",
"_id": "AV5V8lbE28ShqBNuBl60",
"_score": 2.575364,
"_source": {
"acb": {
"version": 1,
"id": "5",
"owner": "pc",
"item": {
"name": "Profile Average Latency",
"short_name": "Profile",
"description": "Profile average latency of last month"
},
"service": "gsm"
},
"@timestamp": "2017-07-31T22:00:00.000Z",
"value": 370.20963260148716
}
}
]
}
}
J'utilise JQ pour obtenir des données csv:
["Name","Description","Result"],(.hits.hits[]._source | [.acb.item.name,.acb.item.description,.value])|@csv
Je vois résultat:
"Name","Description","Result"
"Account Average Latency","Generate of last month",210.08691986891395
"Profile Average Latency","Profile average latency of last month",370.20963260148716
Je 210,08691986891395 et 370,20963260148716 mais je veux 210,09 et 370,21
Merci pour votre réponse. Mais je vérifie ceci et je vois une erreur: jq: erreur: rond/0 n'est pas défini à, ligne 1: def rondit:. * 100.0 | rond/100.0; ["Nom", "Description", "Résultat"], (.hits.hits [] ._ source | [.acb.item.name, .acb.item.description, .value | roundit]) | @csv jq: 1 erreur de compilation oui, j'utilise linux (jq version 1.5) –
Ouais, il semblerait que 'round' ne soit pas disponible pour vous non plus. Mais nous pourrions aussi l'implémenter en termes de "plancher". Pas exactement la même chose mais serait assez proche. –