kubectl exec 向pod的文件中增加内容

时间:2021/07/01

事件:测试在写脚本时需要向POD的文件中增加内容\

问题:执行 kubectl exec -it podname -n namespace -- echo "hello world" >> /etc/profile

没有写到POD的/etc/profile 文件,写入到了本地的/etc/profile文件

在测试无法解决的时候需要找到我

解决:

模拟问题:

创建POD

kubectl exec -it podname -n namespace -- echo "hello world" >> /etc/profile

模拟写入

kubectl exec -it nginx -n default -- bash `echo "hello world" >> /etc/profile`

裂开

尝试

kubectl exec -it nginx -n default -- bash -c "echo "hello world" >> /etc/profile"
hello

裂开

再尝试

kubectl exec -it nginx -n default -- bash -c "echo hello world >> /etc/profile"

问题解决

反思

如果用-c 那么bash 会从第一个非选项参数后面的字符串中读取命令,如果字符串有多个空格,第一个空格前面的字符串是要执行的命令,也就是$0, 后面的是参数,即$1, $2....

posted @   紫色飞猪  阅读(793)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
点击右上角即可分享
微信分享提示