Skip to content

Commit

Permalink
yaml-parse: Add README
Browse files Browse the repository at this point in the history
  • Loading branch information
DavidGamba committed Feb 1, 2022
1 parent f2fdae6 commit c6a4738
Showing 1 changed file with 117 additions and 0 deletions.
117 changes: 117 additions & 0 deletions yaml-parse/README.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
= yaml-parse

Parses YAML input passed from file or piped to STDIN and filters it by key or index

== Install

`$ go install github.com/DavidGamba/dgtools/yaml-parse@master`

== Examples

Given the following test data in the file `test_data/test.yaml`:

[source, yaml]
----
---
hello: world
array:
- element 1
- element 2
- element 3
array 2:
- key1: value1
- key2: value2
- key3: value3
number: 123
float: 123.123
bool: true
----

.Print all contents
----
$ yaml-parse -f test_data/test.yaml
array:
- element 1
- element 2
- element 3
array 2:
- key1: value1
- key2: value2
- key3: value3
bool: true
float: 123.123
hello: world
number: 123
----

.Print `array`
----
$ yaml-parse -f test_data/test.yaml -k array
- element 1
- element 2
- element 3
----

.Print `array` first element
----
$ yaml-parse -f test_data/test.yaml -k array -k 0
element 1
----

.Print `array 2`
----
$ yaml-parse -f test_data/test.yaml -k 'array 2'
- key1: value1
- key2: value2
- key3: value3
----

.Print `array 2` first element then map value
----
$ yaml-parse -f test_data/test.yaml -k 'array 2' -k 0 -k key1
value1
----

.Do the same with slash
----
$ yaml-parse -f test_data/test.yaml -k 'array 2/0/key1'
value1
----

.Add a json element to 'array 2'
----
$ yaml-parse -f test_data/test.yaml --add '{ hola: mundo }' -k 'array 2'
array:
- element 1
- element 2
- element 3
array 2:
- key1: value1
- key2: value2
- key3: value3
- hola: mundo
bool: true
float: 123.123
hello: world
number: 123
----

.Read the second document of a multi document YAML file
----
$ yaml-parse -f test_data/multiple.yaml -d 2
arreglo:
- elemento 1
- elemento 2
- elemento 3
arreglo 2:
- llave1: valor1
- llave2: valor2
- llave3: valor3
bool: true
float: 123.123
hola: mundo
numero: 123
----

0 comments on commit c6a4738

Please sign in to comment.