You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用单行命令在Kubernetes Pod容器内执行指定Shell脚本?

合并Kubernetes容器内Shell操作的单行命令

直接用kubectl exec传递串联的shell命令即可,无需先进入交互式bash。以下是两种常用的实现方式:

方法一:切换目录后执行脚本(推荐)

kubectl exec test-pod -c test-container -- /bin/bash -c "cd test/bin && ./backup.sh"
  • -- /bin/bash -c 用于让容器启动bash解释器,执行引号内的命令串
  • 使用&&而非分号;,能确保只有cd命令成功(目标目录存在)时,才会执行后续的备份脚本,避免无效执行

如果你的backup.sh需要交互式操作(比如输入确认信息),加上-it参数即可:

kubectl exec -it test-pod -c test-container -- /bin/bash -c "cd test/bin && ./backup.sh"

方法二:直接用绝对路径执行脚本(更简洁)

如果你清楚backup.sh在容器内的绝对路径(比如/test/bin/backup.sh),可以跳过切换目录的步骤,直接执行:

kubectl exec test-pod -c test-container -- /test/bin/backup.sh

这种写法更高效,适合明确脚本位置的场景。

内容的提问来源于stack exchange,提问作者Devaddy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 18:20:48