A simple CLI for working with YAML files.
$ npm install -g yaml-cli
You can set up shell completion like this:
$ eval $(yaml env -)
Given the following test.yml
file:
foo:
bar: 7
baz:
- 17
- "hello world"
You can get properties:
$ yaml get test.yaml foo.bar
7
or array accessors:
$ yaml test.yaml foo.baz.1
hello world
You can set values, too.
$ yaml set test.yaml foo.baz.1 goodbye
foo:
bar: 7
baz:
- 17
- "goodbye"
You can instantiate template files, too. Given the following template:
I would like to say {{foo.baz.1}}
you can instantiate it like this:
$ yaml t test.yaml test.template
I would like to say hello world
You can read and write JSON.
To convert from JSON to YAML:
$ yaml json read test.json
foo:
bar: 7
baz:
- 17
- "hello world"
To convert from YAML to JSON:
$ yaml json write test.yaml
{
"foo": {
"bar": 7,
"baz": [
17,
"hello world"
]
}
}
You can read and write TOML, too.
To convert from TOML to YAML:
$ yaml toml read test.toml
foo:
bar: 7
somename:
partone:
one: 7
two:
- some string
- hello world
To convert from YAML to TOML:
$ yaml toml write test-toml.yaml
[foo]
bar = 7
baz = [ "some string", "hello world" ]
You can get more help by just typing yaml
.
$ yaml
Usage: yaml <command> [<args>]
Some useful yaml commands are:
commands List all yaml commands
get Get a value from a YAML file
json Import/export YAML to/from JSON
set Set a value in a YAML file
template Instantiate a template file with a YAML file.
toml Import/export YAML to/from TOML
See 'yaml help <command>' for information on a specific command.
See the issues list—and please open your own or +1
your favorites.