x-cmd pkg | xsv - CSV 和 TSV 文件处理器
发布时间:2024年01月08日
简介
xsv 是一个用于索引、切片、分析、拆分和连接 CSV 和 TSV 文件的命令行程序,由 Andrew Gallant 使用 Rust 语言开发,首次发布于 2014 年 11月。
xsv 专为效率而生,并提供很多适合表格数据批处理场景的功能:
- 支持使用正则表达式或 类 SQL 语句进行筛选和排序。
- 提供对 CSV 数据文件统计分析的功能,例如统计行数、列数、频率
- 提供对 CSV 数据文件拼接和拆分的功能,例如将 CSV 数据文件拆分为多个文件、联接 CSV 多个文件
首次用户
-
使用 x xsv
即可自动下载并使用
- 在终端运行
eval "$(curl https://get.x-cmd.com)"
即可完成 x 命令安装, 详情参考 x-cmd 官网
-
x-cmd 提供1分钟教程,其中包含了 xsv 命令常用功能的 demo 示例,可以帮你快速上手 xsv 。
-
使用案例:
x xsv headers path/data.csv
x xsv count path/data.csv
x xsv table path/data.csv
x ascii | x xsv select Oct,Acronym,Description
x ascii | x xsv sort -s Acronym
技术特点
- 性能优秀
- xsv 采用 Rust 编写,作者在实现中非常注意优化,因此 xsv 的性能极其优秀,可以胜任大数据场景。
- 在8核16进程,select 的数据吞吐量能够到达325MB/s
- benchmark
- 常用功能足够简单,同时为了极致的性能,性能方面的选择会暴露在命令项选项当中。
- 采用 CSV 存储 GB 级别数据的讨论
- 作者很有趣,对该项目的使用场景进行了说明。反过来,也能知道作者使用xsv所处理的数据量都是非常大的。对于一般场景,其性能和可靠性是绰绰有余的。
- 当数据足够大(例如上 GB),数据库是更好的选择,这一点是合理的。而 sqlite3 非常适合这类场景。
- 但是,对于冷数据运维场景,或者数据本身高度冗余(以压缩方式存储),GB 级别的数据输入是存在的。而配合日益强大的 CPU 计算,xsv 的存在给了我们更多的选择。
进一步阅读
- xsv 源代码 - xsv 项目的源代码托管在 GitHub,你可以在这里找到最新版本的 xsv 和参与社区贡献。
- xsv 使用示例 - 该文章为 xsv 项目的 README.md 文档,其中提供 xsv 常用功能的使用示例。
- kandi: xsv - 该网站从社区支持、项目质量、安全、License、Reuse 等方面对 xsv 项目进行了评估。
X-CMD 官网
文章来源:https://blog.csdn.net/edwinjhlee/article/details/135458894
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!