y
y
yq
v4.x
Search
K

Equals

This is a boolean operator that will return true if the LHS is equal to the RHS and false otherwise.
.a == .b
It is most often used with the select operator to find particular nodes:
select(.a == .b)
The not equals != operator returns false if the LHS is equal to the RHS.
  • comparison (>=, < etc) operators here
  • boolean operators (and, or, any etc) here
  • select operator here

Match string

Given a sample.yml file of:
- cat
- goat
- dog
then
yq '.[] | (. == "*at")' sample.yml
will output
true
true
false

Don't match string

Given a sample.yml file of:
- cat
- goat
- dog
then
yq '.[] | (. != "*at")' sample.yml
will output
false
false
true

Match number

Given a sample.yml file of:
- 3
- 4
- 5
then
yq '.[] | (. == 4)' sample.yml
will output
false
true
false

Don't match number

Given a sample.yml file of:
- 3
- 4
- 5
then
yq '.[] | (. != 4)' sample.yml
will output
true
false
true

Match nulls

Running
yq --null-input 'null == ~'
will output
true

Non existent key doesn't equal a value

Given a sample.yml file of:
a: frog
then
yq 'select(.b != "thing")' sample.yml
will output
a: frog

Two non existent keys are equal

Given a sample.yml file of:
a: frog
then
yq 'select(.b == .c)' sample.yml
will output
a: frog