mirror of
https://github.com/mikefarah/yq.git
synced 2024-11-12 13:48:06 +00:00
1.4 KiB
1.4 KiB
Delete
Deletes matching entries in maps or arrays.
{% hint style="warning" %} Note that versions prior to 4.18 require the 'eval/e' command to be specified.
yq e <exp> <file>
{% endhint %}
Delete entry in map
Given a sample.yml file of:
a: cat
b: dog
then
yq 'del(.b)' sample.yml
will output
a: cat
Delete nested entry in map
Given a sample.yml file of:
a:
a1: fred
a2: frood
then
yq 'del(.a.a1)' sample.yml
will output
a:
a2: frood
Delete entry in array
Given a sample.yml file of:
- 1
- 2
- 3
then
yq 'del(.[1])' sample.yml
will output
- 1
- 3
Delete nested entry in array
Given a sample.yml file of:
- a: cat
b: dog
then
yq 'del(.[0].a)' sample.yml
will output
- b: dog
Delete no matches
Given a sample.yml file of:
a: cat
b: dog
then
yq 'del(.c)' sample.yml
will output
a: cat
b: dog
Delete matching entries
Given a sample.yml file of:
a: cat
b: dog
c: bat
then
yq 'del( .[] | select(. == "*at") )' sample.yml
will output
b: dog
Recursively delete matching keys
Given a sample.yml file of:
a:
name: frog
b:
name: blog
age: 12
then
yq 'del(.. | select(has("name")).name)' sample.yml
will output
a:
b:
age: 12