yq/mkdocs/create.md

47 lines
860 B
Markdown
Raw Normal View History

2017-04-13 05:36:59 +00:00
```
2020-01-13 05:58:11 +00:00
yq n <path_expression> <new value>
2017-04-13 05:36:59 +00:00
```
2020-01-13 05:58:11 +00:00
Yaml files can be created using the 'new' command. This works in the same way as the write command, but you don't pass in an existing Yaml file. Currently this does not support creating multiple documents in a single yaml file.
See docs for [path expression](path_expressions.md)
## Creating a simple yaml file
2017-04-13 05:36:59 +00:00
```bash
2017-12-17 22:11:08 +00:00
yq n b.c cat
2017-04-13 05:36:59 +00:00
```
will output:
```yaml
b:
c: cat
```
2020-01-13 05:58:11 +00:00
## Creating using a create script
2017-04-13 05:36:59 +00:00
Create scripts follow the same format as the update scripts.
Given a script create_instructions.yaml of:
```yaml
2020-01-13 05:58:11 +00:00
- command: update
path: b.c
value:
#great
things: frog # wow!
2017-04-13 05:36:59 +00:00
```
then
```bash
2017-12-17 22:11:08 +00:00
yq n -s create_instructions.yaml
2017-04-13 05:36:59 +00:00
```
will output:
```yaml
b:
2020-01-13 05:58:11 +00:00
c:
#great
things: frog # wow!
2017-04-13 05:36:59 +00:00
```
You can also pipe the instructions in:
```bash
2017-12-17 22:11:08 +00:00
cat create_instructions.yaml | yq n -s -
2020-01-13 05:58:11 +00:00
```