yq/pkg/yqlib/doc/Document Index.md

686 B

Use the documentIndex operator to select nodes of a particular document.

Retrieve a document index

Given a sample.yml file of:

a: cat
---
a: frog

then

yq eval '.a | documentIndex' sample.yml

will output

0
---
1

Filter by document index

Given a sample.yml file of:

a: cat
---
a: frog

then

yq eval 'select(. | documentIndex == 1)' sample.yml

will output

a: frog

Print Document Index with matches

Given a sample.yml file of:

a: cat
---
a: frog

then

yq eval '.a | ({"match": ., "doc": (. | documentIndex)})' sample.yml

will output

match: cat
doc: 0
match: frog
doc: 1