queer/utt:utt是通用的开源文本转换器


utt是一种用于在文本数据格式之间进行转换的工具。utt 最初是为一个涉及大量烦人转换的项目编写的,以至于一次性脚本还不够。
pandoc更侧重于在 markdown 和 HTML 等人类格式之间进行转换,而 utt 更侧重于在计算机可以理解的数据格式之间进行转换
 
支持文本文档格式:

  • JSON
  • XML
  • CSV
  • YAML
  • Java Properties
  • TOML
  • Base 64
  • Plain Text


 
从 JSON 转换为 YAML:

$ echo '{"key": [1, 2, 3]}' | utt -i json -o yaml
---
key:
- 1
- 2
- 3

 
从 JSON对象获得键key:

$ echo '[{"key": 1}, {"key": 2}, {"key": 3}]' | utt -i json -o json -M '_.key'
[1.0,2.0,3.0]

  
 
使用base64编码text文本:
$ echo "this is a test" | utt -i plain -o base64
dGhpcyBpcyBhIHRlc3Q=
  
从XML转换到JSON:
$ echo "<a><b>c</b><b>c</b><b>c</b><b>c</b></a>" | utt -i xml -o json -M '$.b'
[
"c","c","c","c"]