Unix环境中有一些出色的工具可以解析各种形式的文本。但是,最近,数据不再是以前的传统(历史)格式(CSV,TSV,基于记录或基于其他分隔符的格式)。这些天的数据以XML / JSON之类的结构化格式进行交换。
我知道有一些很好的工具,例如sed,awk和Perl,它们可以减少几乎任何形式的数据。但是,要使用这种结构化数据,通常必须编写一个完整的程序,并且由于提取信息的时间很少,因此必须坐下来弄清楚要查询和放置的内容的整个逻辑。以编程方式将其关闭。有时这还不行–基本上是因为从这些文件中提取的信息充当了进一步工作的输入;还因为搜索适当的解决方案并将其编码所需的时间。需要具有足够开关的命令行工具来查找,查询和转储数据。
我正在寻找采用XML / JSON或其他形式的结构化数据并将其转储为csv等其他格式的工具,以便从那里可以使用其他命令从中获取任何信息。
您知道有哪些命令行实用程序可以完成这种工作吗?已经有可用的awk / Perl脚本了吗?
jq
是在外壳中解析JSON的好工具:stedolan.github.io/jq