我使用Shelljs和sed命令生成新的K8S配置文件
shell.exec(`sed -e s%${server}%${endpoint}%g -e s%${certificate}%${cert}%g config-temp`)
shell.exec("cat config-temp | tee config")
然后我正在检查K8S群集是否正在运行
kubectl cluster-info
错误消息看起来像
error: Error loading config file "~/.kube/config": yaml: control characters are not allowed
但是,如果我从config-temp
复制所有内容,然后将其粘贴到config
,kubectl cluster-info
工作。
我没有在网上找到相同的错误消息。我只是想知道是否有人遇到类似的问题。任何助手
尝试sed -Ei
而不是sed -e
,真的编辑config-temp
谢谢你们的投入。 sed部分没有问题,我想我还没有明确地解决我的问题。问题是当我用cert替换证书时,cert变量中的文本有一些特殊字符,K8S无法识别。