shell 如何将yaml文件格式化为csv格式?

eyh26e7m  于 2022-11-16  发布在  Shell
关注(0)|答案(2)|浏览(211)

我已经使用yq命令格式化了一个yaml文件:

目录包括列表.yml| yq -r '.产品系列.ADO_FeedsList'

输出:

---
ProductLine:
  ProductLineName: AAAAA
  ADO_FeedsList:
  - ProjectName: IT
    FeedsName:
    - test
    - test2
  - ProjectName: organization
    FeedsName:
    - hello
    - world
---
ProductLine:
  ProductLineName: BBBBB
  ADO_FeedsList:
  - ProjectName: Fin
    FeedsName:
    - good
    - aaaa
  - ProjectName: organization
    FeedsName:
    - bbb
    - ccc

有人能给予我一些建议,我不知道如何转换为csv格式。
我的问题:如何将内容转换为以下格式:
IT,测试
IT,测试2
组织,你好
世界组织
芬,好
鳍,aaaa
bbb组织
组织,ccc
非常感谢。🙂

umuewwlo

umuewwlo1#

如果您使用的是mikefarah/yq,您可以使用-o csv直接输出CSV(而不是使用-o json并调用jq):
第一个

6qftjkof

6qftjkof2#

首先,转换为JSON,然后使用jq命令。

yq eval -o json includelist.yml | \
    jq -r '.ProductLine.ADO_FeedsList[]|"\(.ProjectName),\(.FeedsName[])"'

相关问题