2

abc我有以下 yaml 文件,如果值中存在字符串,我正在尝试获取所有键值对 。

a: abcsdf
b: hyuabc
c: iopabc
d: mnhbvgc

预期输出:

a: abcsdf
b: hyuabc
c: iopabc

我的尝试:

yq eval '.[] | select(. == "*abc*") test.yaml
4

1 回答 1

2

真的很奇怪,工作中的selectdel功能完全不同。select 将过滤器的结果作为数组元素返回,而 delete 则返回地图

yq eval 'del( .[] | select( . != "*abc*" ) )' yaml
于 2021-05-06T15:54:38.590 回答