首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >csvkit in2csv -如何将单个json对象转换为两列csv

csvkit in2csv -如何将单个json对象转换为两列csv
EN

Stack Overflow用户
提问于 2019-03-08 00:47:33
回答 1查看 620关注 0票数 2

找一条有csvkit的班轮。

从一个普通的json对象

代码语言:javascript
复制
{
  "whatever": 2342,
  "otherwise": 119,
  "and": 1,
  "so": 2,
  "on": 3
}

想要这个csv

代码语言:javascript
复制
whatever,2342
otherwise,119
and,1
so,2
on,3

我基本上想让这个命令起作用,但它不起作用。

代码语言:javascript
复制
echo $the_json | in2csv -f json
> When converting a JSON document with a top-level dictionary element, a key must be specified.

似乎是csvkit能做的事,而我只是没有找到正确的选择。

EN

回答 1

Stack Overflow用户

发布于 2021-12-14 16:00:02

测试了第一个贴出的答案工作!但这有点让人困惑,因为"$the_json“指的是json的原始内容。因此,命令的一个例子可以是:

代码语言:javascript
复制
echo '[{"a":"b","c":"d"}]' | in2csv -I -f json | csvtool transpose -

如果您想使用文件名来代替它,例如,myfile.json可以使用sed命令添加方括号并将其输送到in2csv:

代码语言:javascript
复制
sed -e '1s/^/[/' -e 's/$/,/' -e '$s/,$/]/' myfile.json | in2csv -I -f json > myfile.csv

使用完整转接命令的示例:

代码语言:javascript
复制
sed -e '1s/^/[/' -e 's/$/,/' -e '$s/,$/]/' myfile.json | in2csv -I -f json | csvtool transpose - > myfile.csv

来源:如何在UNIX上添加开始和结尾的括号

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55055145

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档