Delete
yq delete <yaml_file|-> <path_expression>
The delete command will delete all the matching nodes for the path expression in the given yaml input.
See docs for path expression for more details.
Deleting from a simple document¶
Given a sample.yaml file of:
b:
c: 2
apples: green
then
yq d sample.yaml b.c
will output
b:
apples: green
From STDIN¶
Use "-" (without quotes) in-place of a file name if you wish to pipe in input from STDIN.
cat sample.yaml | yq d - b.c
Deleting in-place¶
yq d -i sample.yaml b.c
will update the sample.yaml file so that the 'c' node is deleted
Multiple Documents¶
Delete from single document¶
Given a sample.yaml file of:
something: else
field: leaveMe
---
b:
c: 2
field: deleteMe
then
yq w -d1 sample.yaml field
will output:
something: else
field: leaveMe
---
b:
c: 2
Delete from all documents¶
Given a sample.yaml file of:
something: else
field: deleteMe
---
b:
c: 2
field: deleteMeToo
then
yq w -d'*' sample.yaml field
will output:
something: else
---
b:
c: 2