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

为何我的Shell脚本在Docker容器中无法正常执行?

Docker容器中执行Shell脚本提示"not found"的解决办法

问题场景

将简单Shell脚本test.sh放入Docker容器后,通过ls命令可看到文件,more命令能查看脚本内容,但执行./test.sh时出现报错:

/bin/sh: ./test.sh: not found

当前操作用户为user,执行ls -l的输出为:

-rwxrwxrwx    1 user     group          327 Mar 24 14:14 test.sh

脚本最简代码示例:

#!/bin/sh
var=$1
echo $var

解决方法

方法1:通过sh命令直接调用脚本

执行以下命令即可正常运行脚本并得到预期输出:

sh test.sh testMessage

返回结果:

testMessage

方法2:修改脚本的shebang行

将脚本开头的#!/bin/bash(原脚本使用的shebang)修改为#!/bin/sh,修改后直接执行./test.sh testMessage即可正常运行。

感谢@David Maze提供的解决思路。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 14:27:07