mirror of
https://github.com/mikefarah/yq.git
synced 2024-12-19 20:19:04 +00:00
1.3 KiB
1.3 KiB
Alternative (Default value)
This operator is used to provide alternative (or default) values when a particular expression is either null or false.
LHS is defined
Given a sample.yml file of:
{a: bridge}
then
yq '.a // "hello"' sample.yml
will output
bridge
LHS is not defined
Given a sample.yml file of:
{}
then
yq '.a // "hello"' sample.yml
will output
hello
LHS is null
Given a sample.yml file of:
{a: ~}
then
yq '.a // "hello"' sample.yml
will output
hello
LHS is false
Given a sample.yml file of:
{a: false}
then
yq '.a // "hello"' sample.yml
will output
hello
RHS is an expression
Given a sample.yml file of:
{a: false, b: cat}
then
yq '.a // .b' sample.yml
will output
cat
Update or create - entity exists
This initialises a
if it's not present
Given a sample.yml file of:
a: 1
then
yq '(.a // (.a = 0)) += 1' sample.yml
will output
a: 2
Update or create - entity does not exist
This initialises a
if it's not present
Given a sample.yml file of:
b: camel
then
yq '(.a // (.a = 0)) += 1' sample.yml
will output
b: camel
a: 1