问题标签 [yq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1531 浏览

xml - 使用 xq 和 jq 将 XML 解析为 CSV

在 python xq 语法中有一些用于将 xml 解析为 csv 的终端命令(也需要安装 python-yq):

这是xml文件示例:

我需要添加参数标签进行解析。我试图通过."param[@name="category type"]" , ."param[@name=category type]来处理它(对于具有 size 属性的 param 标签也是如此),但它不起作用.

必要的输出csv:

请给我建议如何处理具有确切属性和值的标签并获取其文本文本内容?

谢谢!

0 投票
2 回答
2198 浏览

gitlab - jq 是否已安装并在 PATH 上可用?

我正在尝试在 gitlab CI 中读取 yaml 文件。我在 CI 工作中安装jq==1.0.2yq==2.10.1使用pip,我使用 python:3.7 图像。当我尝试读取 yaml 文件时,出现错误

我的 yaml 文件没有调用 jq,我的提交中确实有这个 yaml 文件。我能够做到which yq,当我这样做时which jq,CI 工作失败了。有人有什么想法吗?

0 投票
1 回答
1388 浏览

yaml - 用 yq 替换包含单引号的行的 YAML 文本

我正在尝试编辑 YAML 文件以通过 bash 脚本替换几个特定值。

例如,在以下文件中,我想将“command”的值从更改 sh -c 'fabric-ca-server init -b admin:adminpw'sh -c 'fabric-ca-server start -b admin:adminpw'

之前(原始文件):

之后(期望的结果):

最初,我是这样使用 sed 的: sed -i "10s/command:.*/command: sh -c 'fabric-ca-server start -b $UNVAR:$PWVAR'/" ./docker-compose.yaml哪个有效,但相当笨拙,因为它需要实际的行号(可以更改)。

我发现yq,这似乎更优雅,但我无法让它在这里工作,因为它将 解释-c为一个标志。(我尝试使用“--”来纠正这个问题,但不知道如何让它工作。)

yq w -i ./docker-compose.yaml fabric-ca-server.command sh -c 'fabric-ca-server start -b $TLSCA_UN:$TLSCA_PW'

关于如何使用 yq 正确执行此操作的任何建议?

0 投票
2 回答
1335 浏览

docker-compose - 如何使用 yq 删除 YAML 文件中的属性?

由于最近引入了 docker-compose 的错误版本的ubuntu-latest 图像更改,我不得不在我的管道上锁定 docker-compose 的版本。

但是,有一个任务是我用来帮助清理我的部署脚本的,即DockerCompose@0. 我正在尝试实现的等效于

所以基本上我在考虑使用yqwhich 将解析 YAML 文件并删除不适用于堆栈部署的构建选项。但是,我不确定该怎么做。因为我需要从可能包含它的每个服务中删除它。

所以给定以下输入

我想得到

0 投票
1 回答
100 浏览

yaml - 由于列表键,Yq 解析 yaml 失败

我有一个像下面这样的模板

我想使用 yaml 命令提取“xyz.amazonaws.com”。我怎样才能做到这一点 ?由于列表键,它没有响应 - “- 效果:允许”

0 投票
2 回答
524 浏览

yaml - yq:如何读取兄弟元素的值?

我正在探索 yq 来修改我的 YAML,我想spec在 ImageStream下添加一个新元素name == openshift45

以下命令返回有效metadata元素。现在,我想移动到父级,然后选择spec. 这可能与yq- https://github.com/mikefarah/yq吗?

返回

预期输出:

0 投票
1 回答
344 浏览

bash - YQ/JQ 特殊字符查询转换器

我将 yq 与 jq 一起使用,据我所知,您需要在引号和括号的键中“转义”特殊字符。我想使用纯点语法 .cars.big-trucks 查询数据,但我找不到任何可以为我进行转换的工具。

我理想的用法是:

有任何想法吗?谢谢

示例 yaml 文件:

对于 jq 用户,一个示例 json 将是:

查询人

0 投票
1 回答
206 浏览

yaml - 使用 yq 修改 YAML 以在元数据的每个条目下包含标签

我有一个如下所示的 yaml 文件。这个 yaml 文件需要在每个 configmap 下使用新标签进行修补。

我想在这个 configmaplist 中的每个 configmap 下插入标签,如下所示,

我不确定如何在 bash 中执行此操作..请帮助我如何执行此操作 ..yq 有帮助吗?还是自定义?

0 投票
1 回答
121 浏览

yaml - 如何使用 shell 脚本将新配置文件附加到 configtx.yaml 文件?

我是 shell 脚本的新手,并试图探索同样的东西。要求如下。我需要编写一个脚本文件,从前端动态获取 channelProfile 名称,对于这个 channelProfile,我必须在 configtx.yaml 文件的 Profiles 部分下附加现有的 TwoOrgsChannel。我有 configtx.yaml 文件,其中配置文件部分定义为:

注意:*ChannelDefaults、*ApplicationDefaults、*ApplicationCapabilities 定义在同一个文件(configtx.yaml)中。

输出应如下所示:

这是我试图实现但无法生成预期输出的代码。

当我运行这个文件时,我收到了这个错误。

0 投票
1 回答
2170 浏览

yaml - 当键在 yq 中带有点时读取值

当键名中有点时,我在从 yaml 文件中读取值时遇到问题

IE

但是,当我尝试阅读但它没有提供任何输出时,阅读a密钥可以正常工作。cat mytext.yaml | yq r - aa.b.c

我尝试转义点符号,但没有给出任何输出

我在这里缺少什么吗?