首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将内容从CICD变量复制到gitlab-ci.yml文件

如何将内容从CICD变量复制到gitlab-ci.yml文件
EN

Stack Overflow用户
提问于 2022-06-02 09:08:28
回答 1查看 268关注 0票数 -2

在将内容从CICD变量复制到gitlab-ci.yml文件CICD变量时,我遇到了一个问题

我试图在yml文件中访问这个值,其中这个值替换了另一个值。

在这里,我面临的问题是,在使用sed命令进行替换时,它不会将\n复制为\n,而是会使行中断。但我想把它贴上去。

代码语言:javascript
运行
复制
PRIVATE_KEY='-----BEGIN PRIVATE KEY-----\nMIIEvQIBA\n-----END PRIVATE KEY-----\n'
sed -i -e \a s,PRIVATE_KEY,'-----BEGIN PRIVATE KEY-----\nMIIEv\nQIBA\n-----END PRIVATE KEY-----\n',g key.json

输出:

代码语言:javascript
运行
复制
-----BEGIN PRIVATE KEY-----
MIIEv
QIBA
-----END PRIVATE KEY-----

这不是我需要的。

EN

回答 1

Stack Overflow用户

发布于 2022-06-02 09:15:41

您可以使用

代码语言:javascript
运行
复制
sed -i "s,PRIVATE_KEY,$(sed 's/[&/\]/\\&/g' <<< "$PRIVATE_KEY"),g" key.json

在这里,sed 's/[&/\]/\\&/g' <<< "$PRIVATE_KEY"在变量文本中的&/\字符之前添加一个转义反斜杠。

在线演示

代码语言:javascript
运行
复制
#!/bin/bash
PRIVATE_KEY='-----BEGIN PRIVATE KEY-----\nMIIEvQIBA\n-----END PRIVATE KEY-----\n'
sed "s,PRIVATE_KEY,$(sed 's/[&/\]/\\&/g' <<< "$PRIVATE_KEY"),g" <<< "PRIVATE_KEY"

输出:

代码语言:javascript
运行
复制
-----BEGIN PRIVATE KEY-----\nMIIEvQIBA\n-----END PRIVATE KEY-----\n
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72473607

复制
相关文章

相似问题

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