允许 csv/tsv 数据列排序的 Windows 文本编辑器

允许 csv/tsv 数据列排序的 Windows 文本编辑器

我记得我读过一篇文章,其中提到 Windows 上有一个文本编辑器,可以对数据进行排序,对 csv/tsv 的处理方式类似于对 excel 进行排序的方式。

任何指示都值得赞赏,它让我发疯了。

谢谢

答案1

必须是文本编辑器吗?或者(便携式)CSV/TSV 编辑器也可以接受吗?

已 CSV是一个简单而强大的 CSV 文件编辑器,您可以操作任何 CSV 文件,用任意分隔符分隔。

以下是其排序功能的屏幕截图

在此处输入图片描述

答案2

我想不出有哪个 Windows 编辑器可以在内部执行此操作,但 Vim 或 Emacs 可以通过一些外部工具执行此操作,这对您有用吗?处理正确的 CSV 文件会有点复杂,但对于像本例这样的简单文件情况:

1,z,3
2,y,4
3,x,5

... Vim 命令按照每行的第二个字段对文件进行排序,如下所示:

:%!cut -f2,1,3 -d, | sort | cut -f2,1,3 -d,

这依赖于cut可用性(例如来自适用于 Windows 的 GNU textutils)和通常的 Windows sort,因为该命令将通过这些外部程序传输文本来完成工作。

但是,对于正确的 CSV 文件,需要先完全解析 CSV 以处理带引号的逗号,然后再使用此方法排序,然后再将字段重新排序。

sort在 StackOverflow 上可以找到从 Vim 进行管道传输的示例这里

相关内容