我想从嵌入式python代码中退出shell脚本。下面的os.system()无法正常工作,其余的Shell脚本代码仍在执行。
echo "this is shell code"
a=10
python << END
import os
print "this is python code"
if True:
print "yes"
print $a
os.system("exit 1")
END
echo "I am out of python code"
答案 0 :(得分:0)
您必须根据Python脚本的结果显式退出外壳程序。
echo "this is shell code"
a=10
python "$a" <<END || exit
print "this is python code"
if True:
print "yes"
print(sys.argv[1])
sys.exit(1)
END
echo "I am out of python code"
在此示例中,在Python代码无条件退出且状态为1的情况下,将不会到达最终的echo
,因为非零退出状态将导致shell命令exit
运行。 / p>