yq
A lightweight and portable command-line YAML processor. More information: https://mikefarah.gitbook.io/yq/.
-
Output a YAML file, in pretty-print format (v4+):
yq eval {{path/to/file.yaml}}
-
Output a YAML file, in pretty-print format (v3):
yq read {{path/to/file.yaml}} --colors
-
Output the first element in a YAML file that contains only an array (v4+):
yq eval '.[0]' {{path/to/file.yaml}}
-
Output the first element in a YAML file that contains only an array (v3):
yq read {{path/to/file.yaml}} '[0]'
-
Set (or overwrite) a key to a value in a file (v4+):
yq eval '.{{key}} = "{{value}}"' --inplace {{path/to/file.yaml}}
-
Set (or overwrite) a key to a value in a file (v3):
yq write --inplace {{path/to/file.yaml}} '{{key}}' '{{value}}'
-
Merge two files and print to
stdout
(v4+):
yq eval-all 'select(filename == "{{path/to/file1.yaml}}") * select(filename == "{{path/to/file2.yaml}}")' {{path/to/file1.yaml}} {{path/to/file2.yaml}}
-
Merge two files and print to
stdout
(v3):
yq merge {{path/to/file1.yaml}} {{path/to/file2.yaml}} --colors
License and Disclaimer
The content on this page is copyright © 2014—present the tldr-pages team and contributors.This page is used with permission under Creative Commons Attribution 4.0 International License.
While we do attempt to make sure content is accurate, there isn't a warranty of any kind.