主要观点:xan是一个用 Rust 编写的命令行工具,可直接在 shell 中处理 CSV 文件,速度快、内存占用小,能处理大文件并利用多线程并行处理,可进行多种常见 CSV 操作如预览、过滤、排序等,还能进行复杂任务如词法计量、图论相关操作及数据可视化,有多种安装方式和命令,包括各种常见操作的命令及相关文档。
关键信息:
- 用
cargo install xan安装,可调整编译标志,也可安装最新开发版本cargo install --git https://github.com/medialab/xan。 - 在 Windows 可用
Scoop安装,scoop bucket add extras ; scoop install xan。 - 在 macOS 可用
Homebrew安装,brew install xan。 - 在 Arch Linux 可从
extra仓库用pacman安装,sudo pacman -S xan。 - 在 Nix 可通过
nix-shell -p xan安装。 - 有多种可用命令,如
count、headers、view等,各命令有详细文档说明。 - 有表达式语言参考,包括 cheatsheet、函数列表、聚合函数列表及 Scraping DSL。
- 有 cookbook 包含多种使用示例,如合并频率表等。
- 有新闻部分可查看工具进化相关信息,有常见问题解答部分。
重要细节: xan是BurntSushi'sxsv的 fork,适合 SciencesPo 的 médialab 使用场景。- 可通过
xan completions命令安装命令和标题/列名的自动补全。 - 展示了多种数据可视化效果,如各种图表。
- 对于输入输出格式,默认期望标准 CSV 文件,可通过
xan input或-d/--delimiter处理自定义分隔符文件,用xan fmt输出自定义 CSV 方言。 - 可处理无标题的 CSV 文件,用
-n/--no-headers标志。 - 默认从 stdin 读取,某些命令可通过
-指定 stdin,输出到 stdout 或用-o/--output指定输出位置。 - 能读取 gzipped 文件。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。