问题标签 [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 回答
3897 浏览

bash - 从 yaml 文件中的变量中提取 yaml 文件

我有一个简单的 yaml 文件:

我将其存储在 kubernetes 配置映射中:

我现在想从 configmap 中提取内部 yaml 文件。尝试yq我得到:

如果我尝试将 VAR 回显或打印到文件中,则它的格式不像原始文件那样好。

在 bash 中以原始文件格式获取提取的数据的最简单方法是什么?

0 投票
2 回答
14256 浏览

shell - Yq:检索对象键名

我有一个看起来像这样的 YAML 文件(在我的例子中是 docker-compose 文件):

我想提取服务名称,这与YAMLyq的等价物相同jq,以获得以下输出:

目前我可以这样实现:

即使它有效,双管yq对我来说似乎很奇怪。我想我做错了。

问题:有没有办法用一个yq命令来实现它?

我尝试了这个但没有成功,从这个问题中获得灵感:

0 投票
1 回答
276 浏览

json - 使用 yq 根据对象的位置获取对象内的对象名称

我正在使用 yq 将 YAML 转换为 JSON。文件转换后如下所示:

配置文件中对象的两个名称都会根据情况而变化,所以我无法按名称查找。我想获取 Profiles 对象 (chan) 中的第二个对象的名称。如何使用 Bash 和 yq 使这成为可能?

0 投票
1 回答
1117 浏览

terminal - 使用 yq 编辑数组中的 yaml 对象。加速Terminalizer的终端演员(记录)

目标:加快Terminalizer的终端演员(记录)

我有使用 Terminalizer 创建的终端记录。cast.yaml

我想加快回报而不传递--speed-factorterminalizer play. 这样做delays 应该减少。

所以,我需要创建yq-expression 来降低延迟

但这个表达式不起作用。请帮忙写一个合适的。

0 投票
1 回答
2839 浏览

comments - 如何防止 yq 删除评论和空行?

这里用 yq 编辑数组中的 yaml 对象。加速 Terminalizer 的终端演员(记录)我问过如何用 yq 编辑 yaml。我收到了最好的答案。但默认情况下yq会删除注释和空行。如何防止这种行为?

input.yml

执行

结果

0 投票
2 回答
2823 浏览

bash - yq - 添加多行字符串

我正在使用 yq (类似于 jq 但用于 yaml 文件)。我的目标是做到以下几点。我有一个看起来类似于的证书文件

我有一个看起来像这样的 yaml 文件(在本例中为 Openshift 模板)

现在我的目标是将证书注入到 yaml 中,以便输出看起来像这样

然而,互联网搜索和文档都没有任何帮助。我得到的最接近的是使用

yq w /tmp/template.yaml objects[0].tls.certificate "\n$(cat cert.pem)"

给我以下输出

奇怪的是,我想添加的那个的 base64 编码值前面是 !!binary |。任何想法发生了什么以及如何实现我想要的输出?

0 投票
5 回答
515 浏览

shell - 无法从 json 键值响应中解析键值

团队,

我有以下输出和 json 查询,但无法检索模式旁边的值。

另外,有没有办法使用 awk 来拉它?

试过:

0 投票
1 回答
231 浏览

yq - 打印带有点的键的值

我有一个格式如下的 yaml 文件

现在我想打印 foo1.bar1@email.com 的角色

我正在尝试执行以下操作

有解决办法吗?

0 投票
3 回答
11011 浏览

bash - 如果名称:xxx 用 bash 替换 yaml 中的值

我想根据以下内容更改 yamlvalue文件name

例子:

在这里你可以看到我们为 mongo 主机添加了一个环境。现在使用BASH我想MONGO_HOST value根据条件进行更改,例如if - name: MONGO_HOST set value: 172.16.87.98

0 投票
2 回答
400 浏览

json - 从 json jq 输出的前缀 url

团队,我有输出,我想在它前面加上一个 url。

输出

预期产出