shell脚本在bash -l后停止运行



我是shell脚本的新手,我创建了一个包含以下内容的run_all.sh文件,

cd directory1/folder1
bash -l
conda activate py38
poetry install 
./scripts/run_myscript.sh

如果我在终端一个接一个地执行这些行,我没有问题,但是当我把所有的run_all.sh文件并执行(bash run_all.sh)时,只有前两行被执行,然后它停止而不打印任何错误代码。

注意:我正在使用Sagemaker,它使用sh作为默认shell,而不是bash,因此在手动运行中,我启动新shell (bash -l)通过conda (conda activate py38)激活py38并安装要求…

如果你看到我在这里错过了什么,请告诉我。

天哪天哪

#!/bin/sh
cd directory1/folder1 && conda activate py38 && poetry install && ./scripts/run_myscript.sh

如果sh是您的默认shell,并且您想要bash,那么像这样修改您的脚本:

#!/bin/bash -l
cd directory1/folder1
conda activate py38
poetry install 
./scripts/run_myscript.sh

相关内容

  • 没有找到相关文章

最新更新