首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jq支持多个-f选项吗?

jq支持多个-f选项吗?
EN

Stack Overflow用户
提问于 2019-10-26 21:44:25
回答 1查看 34关注 0票数 0
代码语言:javascript
运行
复制
==> main.jq <==
def myflattern:
  .[];

==> main2.jq <==
myflattern

考虑到上面的jq文件,我看到了以下输出。所以jq不支持多个-f?谢谢。

代码语言:javascript
运行
复制
$ jq -f main.jq -f main2.jq <<EOF
[ "a", "b", "c" ]
EOF
parse error: Invalid numeric literal at line 2, column 0

$ jq -f <(cat main.jq main2.jq) <<EOF
[ "a", "b", "c" ]
EOF
"a"
"b"
"c"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-27 01:48:38

正如@OguzIsmail所指出的,jq不支持每次调用出现多个-f,但可能有两个(互补的)解决方案:

如果

  1. 允许,则可以使用进程替换:

jq -f <(cat ....) ...

  • You可以使用jq模块系统。

注意,在jq程序中只能有一个"main“,jq模块只能包含函数定义。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58574971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档