Mac cli 将 yaml 转换为 json

Raj*_*ain 19 json yaml

有没有一种快速方法可以将一堆 yaml 文件转换为 json 文件。我查看了 yaml2json 它不起作用(引发一些异常)

谢谢

小智 34

添加答案是因为 yq 的最新版本没有答案(评论中除外)。

brew install yq

yq -j eval test.yaml
Run Code Online (Sandbox Code Playgroud)

或者,更新的语法:

yq -o=json eval test.yml
Run Code Online (Sandbox Code Playgroud)

  • 即使这样也已经被弃用了。似乎是一个相当移动的目标。现在是`yq -o=json eval test.yml`。 (8认同)

Raj*_*ain 11

使用https://github.com/mikefarah/yq中的真实 yq (不是 python yq)

brew reinstall yq

然后运行:

/usr/local/bin/yq eval deployment.yaml -o=json -P > deployment.json

参数的含义,来自--help

  -P, --prettyPrint           pretty print, shorthand for '... style = ""'
  -o, --output-format string  [yaml|y|json|j|props|p|xml|x] output format type. (default "yaml") 
Run Code Online (Sandbox Code Playgroud)


小智 5

您可以将 YAML 通过管道传输到此(需要安装 pyYAML)

python -c 'import yaml; import json; import sys; print(json.dumps(yaml.safe_load(sys.stdin)));'
Run Code Online (Sandbox Code Playgroud)