使用jq进行分割

问题描述 投票:0回答:1

jq新手。我在 Windows 命令行上使用它。我需要将输入 JSON 中的数组拆分为行,并根据制表符分隔符 ( ) 将数组元素进一步拆分为列

示例:

输入:

{"ProcessId":"5452","TotalRows":226171,"Rows":["001-CARDIO-GRAN\t1052","01_MO_FIN\t1148","02_MO_S_PACK\t1148"]}

我需要:

GRAN,t1052
01_MO_FIN,1148
02_MO_S_PACK,1148

我试过这个:

jq-win32 "last(.[])" output.json


GRAN\t1052",
"01_MO_FIN\t1148",
"02_MO_S_PACK\t1148",

我如何进一步通过管道将其拆分以完成我所需要的。

我在 Windows 上。

谢谢你。

输入:

{“ProcessId”:“5452”,“TotalRows”:226171,“行数”:[“001-CARDIO-GRAN 1052”,“01_MO_FIN 1148”,“02_MO_S_PACK 1148”]}

我需要:

GRAN,t1052 01_MO_FIN,1148 02_MO_S_PACK,1148

jq-win32“最后(.[])”输出.json

json jq
1个回答
0
投票

不确定它在 Windows 上如何工作,但在 Linux 上,以下工作正常:

jq -r '.Rows[] | split("\t") | .[0]+","+.[1]' < file.json 
001-CARDIO-GRAN,1052
01_MO_FIN,1148
02_MO_S_PACK,1148
© www.soinside.com 2019 - 2024. All rights reserved.