【发布时间】:2020-03-04 23:53:40
【问题描述】:
这是我在 Ubuntu 上用来从原始 json 文件中提取数据的命令:
cat results.json | jq -s -c 'sort_by(.name) | .[]'
这些是我得到的输出:
{"name":"I-1","node_id":"458d3d44-9d70-473d-87ae-9cd419277c92","console":5005}
{"name":"I-10","node_id":"c655c49b-083e-46e7-8866-08020761ffac","console":5023}
{"name":"I-11","node_id":"5f62ce93-48ff-420e-9876-e92c01e3d1df","console":5025}
{"name":"I-12","node_id":"af9000dd-0653-4c5d-91ae-def37a95d0fb","console":5027}
{"name":"I-13","node_id":"5ad2301d-688d-4d70-9d35-07b421f4f893","console":5029}
{"name":"I-14","node_id":"2f1fcc75-e642-496a-a822-0d6d0cb46376","console":5031}
{"name":"I-15","node_id":"720c786c-8a38-4c0c-93b7-33850160837c","console":5033}
{"name":"I-16","node_id":"20516282-7cad-43d8-999b-3c20b1e6c3bd","console":5035}
{"name":"I-17","node_id":"e33fa2c1-d36e-4933-ab92-0dad99e2a276","console":5037}
{"name":"I-18","node_id":"4215fe76-1b6b-457d-8a38-85e51b4c53ec","console":5039}
{"name":"I-19","node_id":"351f85c2-7c9c-4847-b15c-43d35d5bdbcd","console":5041}
{"name":"I-2","node_id":"49253898-e628-4ed8-9268-69e6a0b01105","console":5007}
{"name":"I-20","node_id":"0575b79c-4060-4ded-ad69-e5da6bcd4d8b","console":5043}
{"name":"I-21","node_id":"4ba799eb-e48b-49f3-8bb1-65605be85061","console":5045}
...
我怎样才能通过这个 "name" 值以数字方式对输出进行排序?谢谢。 -杰克
【问题讨论】:
-
您不是只是使用
sortby(.name)进行排序吗 - Json 是字符串,所以这是您在排序字符串时会看到的预期排序 -
这是按字符串值排序的,而不是数字方式。我正在寻找按 I-1、I-2、I-3 顺序排列的东西...