Search YAML files satisfying specified conditions
Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
yfind
.gitignore
CHANGES.txt
README.rst
setup.cfg
setup.py

README.rst

yfind

Search YAML files satisfying specified conditions.

Depends on Python 3.

Examples: yfind '.mailings[0].sent < 2012/06/12' my_files/

yfind '.id == 10'

((?.id) and (yfind '.id == 10)) or (.enabled == "False")'

Currently supported search expressions:

<Operand> <Operator> <Operand>

where Operator is one of ==, !=, <, >, <= or >=.

Operands may be numbers (1, 3.0), scalars ("foo", "bar"), dates (2007/12/30) or YAML fields (.foo.bar, .foo[4].bar, .bar).

To check for existance of a field, use '?' before the field name: ?.foo.bar.

Search expression can be combined with the logical operators "and, or, not":

  • not (<SearchExpression>)
  • (<SearchExpression>) and (<SearchExpression>)
  • (<SearchExpression>) or (<SearchExpression>)