我正在尝试定义一些自定义过滤器函数,我需要做的一件事是将字符串列表传递给过滤器并获取输入对象的相应值。例如:
jq -n '{name: "Chris", age: 25, city: "Chicago"} | myFilter(["name", "age"])'
应该返回:
{"name": "Chris", "age": 25}
.
我知道我可以.[some_string]
用来动态获取对象上特定字符串键的值,但我不知道如何将其用于多个字符串键。我认为我遇到的问题是 jq 默认情况下迭代流入过滤器的对象,但没有提供迭代该过滤器参数的方法,即使我使用def myFilter($var)
手册推荐的语法值-论证行为。