mirror of
https://github.com/mikefarah/yq.git
synced 2024-12-19 20:19:04 +00:00
1.7 KiB
1.7 KiB
Compare Operators
Comparison operators (>
, >=
, <
, <=
) can be used for comparing scalar values of the same time.
The following types are currently supported:
- numbers
- strings
- datetimes
Related Operators
- equals / not equals (
==
,!=
) operators (here)[https://mikefarah.gitbook.io/yq/operators/equals] - boolean operators (
and
,or
,any
etc) (here)[https://mikefarah.gitbook.io/yq/operators/boolean-operators] - select operator (here)[https://mikefarah.gitbook.io/yq/operators/select]
{% hint style="warning" %} Note that versions prior to 4.18 require the 'eval/e' command to be specified.
yq e <exp> <file>
{% endhint %}
Compare numbers (>)
Given a sample.yml file of:
a: 5
b: 4
then
yq '.a > .b' sample.yml
will output
true
Compare equal numbers (>=)
Given a sample.yml file of:
a: 5
b: 5
then
yq '.a >= .b' sample.yml
will output
true
Compare strings
Compares strings by their bytecode.
Given a sample.yml file of:
a: zoo
b: apple
then
yq '.a > .b' sample.yml
will output
true
Compare date times
You can compare date times. Assumes RFC3339 date time format, see date-time operators for more information.
Given a sample.yml file of:
a: 2021-01-01T03:10:00Z
b: 2020-01-01T03:10:00Z
then
yq '.a > .b' sample.yml
will output
true
Both sides are null: > is false
Running
yq --null-input '.a > .b'
will output
false
Both sides are null: >= is true
Running
yq --null-input '.a >= .b'
will output
true