Miller 5.5.0 发布,CSV 和 JSON 处理工具

Miller 是一个类似 sed、awk、cut、join 和 sort 工具,用来处理基于命名索引的数据,注入 CSV 和表格化的 JSON。5.5.0 版本发布了,内容如下:

特性

  • 新的 positional-indexing 功能。此版本中,你可以通过 $[[3]] 获取每个记录的第三个字段的名称,并通过 $[[[3]]] 获得其值。这两种方法在赋值语句的左侧或右侧都是可用的,因此你可以更容易地在 DSL 中提前重命名字段
  • 有一个新的 capitalize DSL 功能,补充已经存在的 toupper
  • 有一个新的 skip-trivial-records,解决 #197。同样还有一个新的 remove-empty-columns,解决 #206,这两种方法对于数据清理用例都很有用
  • 尽管 Miller 在内部使用 mmap 来获得大约 20% 的性能提升(相比于不使用 mmap),但这可能会导致读取大文件或太多小文件时出现内存不足的问题。此版本中,Miller 在这些情况下自动避免 mmap。如果你想手动控制这个,仍然可以使用 --mmap 或 --no-mmap
  • 新的  --ivar option for the nest verb,补充已经存在的 --evar
  • 有一个新的按键保存 urandrange DSL 函数:urandrange(low,high) 与 low+(high-low)*urand() 相同
  • 新的  -v option for the cat verb,它将低级别记录结构转储写入标准错误
  • 新的按键保护程序 -N option for mlr, --implicit-csv-header --headerless-csv-output

修复

  • 使用 nest 的 SEGA 嵌套在 then-chains,修复  #220
  • 引号和反斜杠在有 --jvquoteall 的 JSON 输出中没有转义,修复 #222

详情见发布说明:

https://github.com/johnkerl/miller/releases/tag/v5.5.0 

猜你喜欢

转载自www.oschina.net/news/109572/miller-5-5-0-released